diff --git a/docs-preview-494/highlightjs/LICENSE b/docs-preview-494/highlightjs/LICENSE new file mode 100644 index 00000000..2250cc7e --- /dev/null +++ b/docs-preview-494/highlightjs/LICENSE @@ -0,0 +1,29 @@ +BSD 3-Clause License + +Copyright (c) 2006, Ivan Sagalaev. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/docs-preview-494/highlightjs/highlight.pack.js b/docs-preview-494/highlightjs/highlight.pack.js new file mode 100644 index 00000000..b8008d36 --- /dev/null +++ b/docs-preview-494/highlightjs/highlight.pack.js @@ -0,0 +1,345 @@ +/*! + Highlight.js v11.9.0 (git: b7ec4bfafc) + (c) 2006-2023 undefined and other contributors + License: BSD-3-Clause + */ +var hljs=function(){"use strict";function e(t){ +return t instanceof Map?t.clear=t.delete=t.set=()=>{ +throw Error("map is read-only")}:t instanceof Set&&(t.add=t.clear=t.delete=()=>{ +throw Error("set is read-only") +}),Object.freeze(t),Object.getOwnPropertyNames(t).forEach((n=>{ +const i=t[n],s=typeof i;"object"!==s&&"function"!==s||Object.isFrozen(i)||e(i) +})),t}class t{constructor(e){ +void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1} +ignoreMatch(){this.isMatchIgnored=!0}}function n(e){ +return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'") +}function i(e,...t){const n=Object.create(null);for(const t in e)n[t]=e[t] +;return t.forEach((e=>{for(const t in e)n[t]=e[t]})),n}const s=e=>!!e.scope +;class o{constructor(e,t){ +this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){ +this.buffer+=n(e)}openNode(e){if(!s(e))return;const t=((e,{prefix:t})=>{ +if(e.startsWith("language:"))return e.replace("language:","language-") +;if(e.includes(".")){const n=e.split(".") +;return[`${t}${n.shift()}`,...n.map(((e,t)=>`${e}${"_".repeat(t+1)}`))].join(" ") +}return`${t}${e}`})(e.scope,{prefix:this.classPrefix});this.span(t)} +closeNode(e){s(e)&&(this.buffer+="")}value(){return this.buffer}span(e){ +this.buffer+=``}}const r=(e={})=>{const t={children:[]} +;return Object.assign(t,e),t};class a{constructor(){ +this.rootNode=r(),this.stack=[this.rootNode]}get top(){ +return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){ +this.top.children.push(e)}openNode(e){const t=r({scope:e}) +;this.add(t),this.stack.push(t)}closeNode(){ +if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){ +for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)} +walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){ +return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t), +t.children.forEach((t=>this._walk(e,t))),e.closeNode(t)),e}static _collapse(e){ +"string"!=typeof e&&e.children&&(e.children.every((e=>"string"==typeof e))?e.children=[e.children.join("")]:e.children.forEach((e=>{ +a._collapse(e)})))}}class c extends a{constructor(e){super(),this.options=e} +addText(e){""!==e&&this.add(e)}startScope(e){this.openNode(e)}endScope(){ +this.closeNode()}__addSublanguage(e,t){const n=e.root +;t&&(n.scope="language:"+t),this.add(n)}toHTML(){ +return new o(this,this.options).value()}finalize(){ +return this.closeAllNodes(),!0}}function l(e){ +return e?"string"==typeof e?e:e.source:null}function g(e){return h("(?=",e,")")} +function u(e){return h("(?:",e,")*")}function d(e){return h("(?:",e,")?")} +function h(...e){return e.map((e=>l(e))).join("")}function f(...e){const t=(e=>{ +const t=e[e.length-1] +;return"object"==typeof t&&t.constructor===Object?(e.splice(e.length-1,1),t):{} +})(e);return"("+(t.capture?"":"?:")+e.map((e=>l(e))).join("|")+")"} +function p(e){return RegExp(e.toString()+"|").exec("").length-1} +const b=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./ +;function m(e,{joinWith:t}){let n=0;return e.map((e=>{n+=1;const t=n +;let i=l(e),s="";for(;i.length>0;){const e=b.exec(i);if(!e){s+=i;break} +s+=i.substring(0,e.index), +i=i.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?s+="\\"+(Number(e[1])+t):(s+=e[0], +"("===e[0]&&n++)}return s})).map((e=>`(${e})`)).join(t)} +const E="[a-zA-Z]\\w*",x="[a-zA-Z_]\\w*",w="\\b\\d+(\\.\\d+)?",y="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",_="\\b(0b[01]+)",O={ +begin:"\\\\[\\s\\S]",relevance:0},v={scope:"string",begin:"'",end:"'", +illegal:"\\n",contains:[O]},k={scope:"string",begin:'"',end:'"',illegal:"\\n", +contains:[O]},N=(e,t,n={})=>{const s=i({scope:"comment",begin:e,end:t, +contains:[]},n);s.contains.push({scope:"doctag", +begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)", +end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0}) +;const o=f("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/) +;return s.contains.push({begin:h(/[ ]+/,"(",o,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),s +},S=N("//","$"),M=N("/\\*","\\*/"),R=N("#","$");var j=Object.freeze({ +__proto__:null,APOS_STRING_MODE:v,BACKSLASH_ESCAPE:O,BINARY_NUMBER_MODE:{ +scope:"number",begin:_,relevance:0},BINARY_NUMBER_RE:_,COMMENT:N, +C_BLOCK_COMMENT_MODE:M,C_LINE_COMMENT_MODE:S,C_NUMBER_MODE:{scope:"number", +begin:y,relevance:0},C_NUMBER_RE:y,END_SAME_AS_BEGIN:e=>Object.assign(e,{ +"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{ +t.data._beginMatch!==e[1]&&t.ignoreMatch()}}),HASH_COMMENT_MODE:R,IDENT_RE:E, +MATCH_NOTHING_RE:/\b\B/,METHOD_GUARD:{begin:"\\.\\s*"+x,relevance:0}, +NUMBER_MODE:{scope:"number",begin:w,relevance:0},NUMBER_RE:w, +PHRASAL_WORDS_MODE:{ +begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/ +},QUOTE_STRING_MODE:k,REGEXP_MODE:{scope:"regexp",begin:/\/(?=[^/\n]*\/)/, +end:/\/[gimuy]*/,contains:[O,{begin:/\[/,end:/\]/,relevance:0,contains:[O]}]}, +RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~", +SHEBANG:(e={})=>{const t=/^#![ ]*\// +;return e.binary&&(e.begin=h(t,/.*\b/,e.binary,/\b.*/)),i({scope:"meta",begin:t, +end:/$/,relevance:0,"on:begin":(e,t)=>{0!==e.index&&t.ignoreMatch()}},e)}, +TITLE_MODE:{scope:"title",begin:E,relevance:0},UNDERSCORE_IDENT_RE:x, +UNDERSCORE_TITLE_MODE:{scope:"title",begin:x,relevance:0}});function A(e,t){ +"."===e.input[e.index-1]&&t.ignoreMatch()}function I(e,t){ +void 0!==e.className&&(e.scope=e.className,delete e.className)}function T(e,t){ +t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)", +e.__beforeBegin=A,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords, +void 0===e.relevance&&(e.relevance=0))}function L(e,t){ +Array.isArray(e.illegal)&&(e.illegal=f(...e.illegal))}function B(e,t){ +if(e.match){ +if(e.begin||e.end)throw Error("begin & end are not supported with match") +;e.begin=e.match,delete e.match}}function P(e,t){ +void 0===e.relevance&&(e.relevance=1)}const D=(e,t)=>{if(!e.beforeMatch)return +;if(e.starts)throw Error("beforeMatch cannot be used with starts") +;const n=Object.assign({},e);Object.keys(e).forEach((t=>{delete e[t] +})),e.keywords=n.keywords,e.begin=h(n.beforeMatch,g(n.begin)),e.starts={ +relevance:0,contains:[Object.assign(n,{endsParent:!0})] +},e.relevance=0,delete n.beforeMatch +},H=["of","and","for","in","not","or","if","then","parent","list","value"],C="keyword" +;function $(e,t,n=C){const i=Object.create(null) +;return"string"==typeof e?s(n,e.split(" ")):Array.isArray(e)?s(n,e):Object.keys(e).forEach((n=>{ +Object.assign(i,$(e[n],t,n))})),i;function s(e,n){ +t&&(n=n.map((e=>e.toLowerCase()))),n.forEach((t=>{const n=t.split("|") +;i[n[0]]=[e,U(n[0],n[1])]}))}}function U(e,t){ +return t?Number(t):(e=>H.includes(e.toLowerCase()))(e)?0:1}const z={},W=e=>{ +console.error(e)},X=(e,...t)=>{console.log("WARN: "+e,...t)},G=(e,t)=>{ +z[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),z[`${e}/${t}`]=!0) +},K=Error();function F(e,t,{key:n}){let i=0;const s=e[n],o={},r={} +;for(let e=1;e<=t.length;e++)r[e+i]=s[e],o[e+i]=!0,i+=p(t[e-1]) +;e[n]=r,e[n]._emit=o,e[n]._multi=!0}function Z(e){(e=>{ +e.scope&&"object"==typeof e.scope&&null!==e.scope&&(e.beginScope=e.scope, +delete e.scope)})(e),"string"==typeof e.beginScope&&(e.beginScope={ +_wrap:e.beginScope}),"string"==typeof e.endScope&&(e.endScope={_wrap:e.endScope +}),(e=>{if(Array.isArray(e.begin)){ +if(e.skip||e.excludeBegin||e.returnBegin)throw W("skip, excludeBegin, returnBegin not compatible with beginScope: {}"), +K +;if("object"!=typeof e.beginScope||null===e.beginScope)throw W("beginScope must be object"), +K;F(e,e.begin,{key:"beginScope"}),e.begin=m(e.begin,{joinWith:""})}})(e),(e=>{ +if(Array.isArray(e.end)){ +if(e.skip||e.excludeEnd||e.returnEnd)throw W("skip, excludeEnd, returnEnd not compatible with endScope: {}"), +K +;if("object"!=typeof e.endScope||null===e.endScope)throw W("endScope must be object"), +K;F(e,e.end,{key:"endScope"}),e.end=m(e.end,{joinWith:""})}})(e)}function V(e){ +function t(t,n){ +return RegExp(l(t),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(n?"g":"")) +}class n{constructor(){ +this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0} +addRule(e,t){ +t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]), +this.matchAt+=p(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null) +;const e=this.regexes.map((e=>e[1]));this.matcherRe=t(m(e,{joinWith:"|" +}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex +;const t=this.matcherRe.exec(e);if(!t)return null +;const n=t.findIndex(((e,t)=>t>0&&void 0!==e)),i=this.matchIndexes[n] +;return t.splice(0,n),Object.assign(t,i)}}class s{constructor(){ +this.rules=[],this.multiRegexes=[], +this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){ +if(this.multiRegexes[e])return this.multiRegexes[e];const t=new n +;return this.rules.slice(e).forEach((([e,n])=>t.addRule(e,n))), +t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){ +return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,t){ +this.rules.push([e,t]),"begin"===t.type&&this.count++}exec(e){ +const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex +;let n=t.exec(e) +;if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{ +const t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)} +return n&&(this.regexIndex+=n.position+1, +this.regexIndex===this.count&&this.considerAll()),n}} +if(e.compilerExtensions||(e.compilerExtensions=[]), +e.contains&&e.contains.includes("self"))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.") +;return e.classNameAliases=i(e.classNameAliases||{}),function n(o,r){const a=o +;if(o.isCompiled)return a +;[I,B,Z,D].forEach((e=>e(o,r))),e.compilerExtensions.forEach((e=>e(o,r))), +o.__beforeBegin=null,[T,L,P].forEach((e=>e(o,r))),o.isCompiled=!0;let c=null +;return"object"==typeof o.keywords&&o.keywords.$pattern&&(o.keywords=Object.assign({},o.keywords), +c=o.keywords.$pattern, +delete o.keywords.$pattern),c=c||/\w+/,o.keywords&&(o.keywords=$(o.keywords,e.case_insensitive)), +a.keywordPatternRe=t(c,!0), +r&&(o.begin||(o.begin=/\B|\b/),a.beginRe=t(a.begin),o.end||o.endsWithParent||(o.end=/\B|\b/), +o.end&&(a.endRe=t(a.end)), +a.terminatorEnd=l(a.end)||"",o.endsWithParent&&r.terminatorEnd&&(a.terminatorEnd+=(o.end?"|":"")+r.terminatorEnd)), +o.illegal&&(a.illegalRe=t(o.illegal)), +o.contains||(o.contains=[]),o.contains=[].concat(...o.contains.map((e=>(e=>(e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((t=>i(e,{ +variants:null},t)))),e.cachedVariants?e.cachedVariants:q(e)?i(e,{ +starts:e.starts?i(e.starts):null +}):Object.isFrozen(e)?i(e):e))("self"===e?o:e)))),o.contains.forEach((e=>{n(e,a) +})),o.starts&&n(o.starts,r),a.matcher=(e=>{const t=new s +;return e.contains.forEach((e=>t.addRule(e.begin,{rule:e,type:"begin" +}))),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end" +}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t})(a),a}(e)}function q(e){ +return!!e&&(e.endsWithParent||q(e.starts))}class J extends Error{ +constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}} +const Y=n,Q=i,ee=Symbol("nomatch"),te=n=>{ +const i=Object.create(null),s=Object.create(null),o=[];let r=!0 +;const a="Could not find the language '{}', did you forget to load/include a language module?",l={ +disableAutodetect:!0,name:"Plain text",contains:[]};let p={ +ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i, +languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-", +cssSelector:"pre code",languages:null,__emitter:c};function b(e){ +return p.noHighlightRe.test(e)}function m(e,t,n){let i="",s="" +;"object"==typeof t?(i=e, +n=t.ignoreIllegals,s=t.language):(G("10.7.0","highlight(lang, code, ...args) has been deprecated."), +G("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"), +s=e,i=t),void 0===n&&(n=!0);const o={code:i,language:s};N("before:highlight",o) +;const r=o.result?o.result:E(o.language,o.code,n) +;return r.code=o.code,N("after:highlight",r),r}function E(e,n,s,o){ +const c=Object.create(null);function l(){if(!N.keywords)return void M.addText(R) +;let e=0;N.keywordPatternRe.lastIndex=0;let t=N.keywordPatternRe.exec(R),n="" +;for(;t;){n+=R.substring(e,t.index) +;const s=_.case_insensitive?t[0].toLowerCase():t[0],o=(i=s,N.keywords[i]);if(o){ +const[e,i]=o +;if(M.addText(n),n="",c[s]=(c[s]||0)+1,c[s]<=7&&(j+=i),e.startsWith("_"))n+=t[0];else{ +const n=_.classNameAliases[e]||e;u(t[0],n)}}else n+=t[0] +;e=N.keywordPatternRe.lastIndex,t=N.keywordPatternRe.exec(R)}var i +;n+=R.substring(e),M.addText(n)}function g(){null!=N.subLanguage?(()=>{ +if(""===R)return;let e=null;if("string"==typeof N.subLanguage){ +if(!i[N.subLanguage])return void M.addText(R) +;e=E(N.subLanguage,R,!0,S[N.subLanguage]),S[N.subLanguage]=e._top +}else e=x(R,N.subLanguage.length?N.subLanguage:null) +;N.relevance>0&&(j+=e.relevance),M.__addSublanguage(e._emitter,e.language) +})():l(),R=""}function u(e,t){ +""!==e&&(M.startScope(t),M.addText(e),M.endScope())}function d(e,t){let n=1 +;const i=t.length-1;for(;n<=i;){if(!e._emit[n]){n++;continue} +const i=_.classNameAliases[e[n]]||e[n],s=t[n];i?u(s,i):(R=s,l(),R=""),n++}} +function h(e,t){ +return e.scope&&"string"==typeof e.scope&&M.openNode(_.classNameAliases[e.scope]||e.scope), +e.beginScope&&(e.beginScope._wrap?(u(R,_.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap), +R=""):e.beginScope._multi&&(d(e.beginScope,t),R="")),N=Object.create(e,{parent:{ +value:N}}),N}function f(e,n,i){let s=((e,t)=>{const n=e&&e.exec(t) +;return n&&0===n.index})(e.endRe,i);if(s){if(e["on:end"]){const i=new t(e) +;e["on:end"](n,i),i.isMatchIgnored&&(s=!1)}if(s){ +for(;e.endsParent&&e.parent;)e=e.parent;return e}} +if(e.endsWithParent)return f(e.parent,n,i)}function b(e){ +return 0===N.matcher.regexIndex?(R+=e[0],1):(T=!0,0)}function m(e){ +const t=e[0],i=n.substring(e.index),s=f(N,e,i);if(!s)return ee;const o=N +;N.endScope&&N.endScope._wrap?(g(), +u(t,N.endScope._wrap)):N.endScope&&N.endScope._multi?(g(), +d(N.endScope,e)):o.skip?R+=t:(o.returnEnd||o.excludeEnd||(R+=t), +g(),o.excludeEnd&&(R=t));do{ +N.scope&&M.closeNode(),N.skip||N.subLanguage||(j+=N.relevance),N=N.parent +}while(N!==s.parent);return s.starts&&h(s.starts,e),o.returnEnd?0:t.length} +let w={};function y(i,o){const a=o&&o[0];if(R+=i,null==a)return g(),0 +;if("begin"===w.type&&"end"===o.type&&w.index===o.index&&""===a){ +if(R+=n.slice(o.index,o.index+1),!r){const t=Error(`0 width match regex (${e})`) +;throw t.languageName=e,t.badRule=w.rule,t}return 1} +if(w=o,"begin"===o.type)return(e=>{ +const n=e[0],i=e.rule,s=new t(i),o=[i.__beforeBegin,i["on:begin"]] +;for(const t of o)if(t&&(t(e,s),s.isMatchIgnored))return b(n) +;return i.skip?R+=n:(i.excludeBegin&&(R+=n), +g(),i.returnBegin||i.excludeBegin||(R=n)),h(i,e),i.returnBegin?0:n.length})(o) +;if("illegal"===o.type&&!s){ +const e=Error('Illegal lexeme "'+a+'" for mode "'+(N.scope||"")+'"') +;throw e.mode=N,e}if("end"===o.type){const e=m(o);if(e!==ee)return e} +if("illegal"===o.type&&""===a)return 1 +;if(I>1e5&&I>3*o.index)throw Error("potential infinite loop, way more iterations than matches") +;return R+=a,a.length}const _=O(e) +;if(!_)throw W(a.replace("{}",e)),Error('Unknown language: "'+e+'"') +;const v=V(_);let k="",N=o||v;const S={},M=new p.__emitter(p);(()=>{const e=[] +;for(let t=N;t!==_;t=t.parent)t.scope&&e.unshift(t.scope) +;e.forEach((e=>M.openNode(e)))})();let R="",j=0,A=0,I=0,T=!1;try{ +if(_.__emitTokens)_.__emitTokens(n,M);else{for(N.matcher.considerAll();;){ +I++,T?T=!1:N.matcher.considerAll(),N.matcher.lastIndex=A +;const e=N.matcher.exec(n);if(!e)break;const t=y(n.substring(A,e.index),e) +;A=e.index+t}y(n.substring(A))}return M.finalize(),k=M.toHTML(),{language:e, +value:k,relevance:j,illegal:!1,_emitter:M,_top:N}}catch(t){ +if(t.message&&t.message.includes("Illegal"))return{language:e,value:Y(n), +illegal:!0,relevance:0,_illegalBy:{message:t.message,index:A, +context:n.slice(A-100,A+100),mode:t.mode,resultSoFar:k},_emitter:M};if(r)return{ +language:e,value:Y(n),illegal:!1,relevance:0,errorRaised:t,_emitter:M,_top:N} +;throw t}}function x(e,t){t=t||p.languages||Object.keys(i);const n=(e=>{ +const t={value:Y(e),illegal:!1,relevance:0,_top:l,_emitter:new p.__emitter(p)} +;return t._emitter.addText(e),t})(e),s=t.filter(O).filter(k).map((t=>E(t,e,!1))) +;s.unshift(n);const o=s.sort(((e,t)=>{ +if(e.relevance!==t.relevance)return t.relevance-e.relevance +;if(e.language&&t.language){if(O(e.language).supersetOf===t.language)return 1 +;if(O(t.language).supersetOf===e.language)return-1}return 0})),[r,a]=o,c=r +;return c.secondBest=a,c}function w(e){let t=null;const n=(e=>{ +let t=e.className+" ";t+=e.parentNode?e.parentNode.className:"" +;const n=p.languageDetectRe.exec(t);if(n){const t=O(n[1]) +;return t||(X(a.replace("{}",n[1])), +X("Falling back to no-highlight mode for this block.",e)),t?n[1]:"no-highlight"} +return t.split(/\s+/).find((e=>b(e)||O(e)))})(e);if(b(n))return +;if(N("before:highlightElement",{el:e,language:n +}),e.dataset.highlighted)return void console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",e) +;if(e.children.length>0&&(p.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."), +console.warn("https://github.com/highlightjs/highlight.js/wiki/security"), +console.warn("The element with unescaped HTML:"), +console.warn(e)),p.throwUnescapedHTML))throw new J("One of your code blocks includes unescaped HTML.",e.innerHTML) +;t=e;const i=t.textContent,o=n?m(i,{language:n,ignoreIllegals:!0}):x(i) +;e.innerHTML=o.value,e.dataset.highlighted="yes",((e,t,n)=>{const i=t&&s[t]||n +;e.classList.add("hljs"),e.classList.add("language-"+i) +})(e,n,o.language),e.result={language:o.language,re:o.relevance, +relevance:o.relevance},o.secondBest&&(e.secondBest={ +language:o.secondBest.language,relevance:o.secondBest.relevance +}),N("after:highlightElement",{el:e,result:o,text:i})}let y=!1;function _(){ +"loading"!==document.readyState?document.querySelectorAll(p.cssSelector).forEach(w):y=!0 +}function O(e){return e=(e||"").toLowerCase(),i[e]||i[s[e]]} +function v(e,{languageName:t}){"string"==typeof e&&(e=[e]),e.forEach((e=>{ +s[e.toLowerCase()]=t}))}function k(e){const t=O(e) +;return t&&!t.disableAutodetect}function N(e,t){const n=e;o.forEach((e=>{ +e[n]&&e[n](t)}))} +"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(()=>{ +y&&_()}),!1),Object.assign(n,{highlight:m,highlightAuto:x,highlightAll:_, +highlightElement:w, +highlightBlock:e=>(G("10.7.0","highlightBlock will be removed entirely in v12.0"), +G("10.7.0","Please use highlightElement now."),w(e)),configure:e=>{p=Q(p,e)}, +initHighlighting:()=>{ +_(),G("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")}, +initHighlightingOnLoad:()=>{ +_(),G("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.") +},registerLanguage:(e,t)=>{let s=null;try{s=t(n)}catch(t){ +if(W("Language definition for '{}' could not be registered.".replace("{}",e)), +!r)throw t;W(t),s=l} +s.name||(s.name=e),i[e]=s,s.rawDefinition=t.bind(null,n),s.aliases&&v(s.aliases,{ +languageName:e})},unregisterLanguage:e=>{delete i[e] +;for(const t of Object.keys(s))s[t]===e&&delete s[t]}, +listLanguages:()=>Object.keys(i),getLanguage:O,registerAliases:v, +autoDetection:k,inherit:Q,addPlugin:e=>{(e=>{ +e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=t=>{ +e["before:highlightBlock"](Object.assign({block:t.el},t)) +}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=t=>{ +e["after:highlightBlock"](Object.assign({block:t.el},t))})})(e),o.push(e)}, +removePlugin:e=>{const t=o.indexOf(e);-1!==t&&o.splice(t,1)}}),n.debugMode=()=>{ +r=!1},n.safeMode=()=>{r=!0},n.versionString="11.9.0",n.regex={concat:h, +lookahead:g,either:f,optional:d,anyNumberOfTimes:u} +;for(const t in j)"object"==typeof j[t]&&e(j[t]);return Object.assign(n,j),n +},ne=te({});return ne.newInstance=()=>te({}),ne}() +;"object"==typeof exports&&"undefined"!=typeof module&&(module.exports=hljs);/*! `bash` grammar compiled for Highlight.js 11.9.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const s=e.regex,t={},n={begin:/\$\{/, +end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{ +className:"variable",variants:[{ +begin:s.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},n]});const a={ +className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE] +},i=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),c={ +begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/, +end:/(\w+)/,className:"string"})]}},o={className:"string",begin:/"/,end:/"/, +contains:[e.BACKSLASH_ESCAPE,t,a]};a.contains.push(o);const r={begin:/\$?\(\(/, +end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,t] +},l=e.SHEBANG({binary:"(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)",relevance:10 +}),m={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0, +contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{ +name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/, +keyword:["if","then","else","elif","fi","for","while","until","in","do","done","case","esac","function","select"], +literal:["true","false"], +built_in:["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset","alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","type","typeset","ulimit","unalias","set","shopt","autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp","chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"] +},contains:[l,e.SHEBANG(),m,r,i,c,{match:/(\/[a-z._-]+)+/},o,{match:/\\"/},{ +className:"string",begin:/'/,end:/'/},{match:/\\'/},t]}}})() +;hljs.registerLanguage("bash",e)})();/*! `nix` grammar compiled for Highlight.js 11.9.0 */ +(()=>{var e=(()=>{"use strict";return e=>{const n={ +keyword:["rec","with","let","in","inherit","assert","if","else","then"], +literal:["true","false","or","and","null"], +built_in:["import","abort","baseNameOf","dirOf","isNull","builtins","map","removeAttrs","throw","toString","derivation"] +},s={className:"subst",begin:/\$\{/,end:/\}/,keywords:n},a={className:"string", +contains:[{className:"char.escape",begin:/''\$/},s],variants:[{begin:"''", +end:"''"},{begin:'"',end:'"'}] +},i=[e.NUMBER_MODE,e.HASH_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,{ +begin:/[a-zA-Z0-9-_]+(\s*=)/,returnBegin:!0,relevance:0,contains:[{ +className:"attr",begin:/\S+/,relevance:.2}]}];return s.contains=i,{name:"Nix", +aliases:["nixos"],keywords:n,contains:i}}})();hljs.registerLanguage("nix",e) +})();/*! `shell` grammar compiled for Highlight.js 11.9.0 */ +(()=>{var s=(()=>{"use strict";return s=>({name:"Shell Session", +aliases:["console","shellsession"],contains:[{className:"meta.prompt", +begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/, +subLanguage:"bash"}}]})})();hljs.registerLanguage("shell",s)})(); \ No newline at end of file diff --git a/docs-preview-494/highlightjs/loader.js b/docs-preview-494/highlightjs/loader.js new file mode 100644 index 00000000..cf0fdac5 --- /dev/null +++ b/docs-preview-494/highlightjs/loader.js @@ -0,0 +1,6 @@ +/* This file is NOT part of highlight.js */ +document.addEventListener('DOMContentLoaded', (event) => { + document.querySelectorAll('.programlisting, .screen').forEach((element) => { + hljs.highlightElement(element); + }); +}); diff --git a/docs-preview-494/highlightjs/mono-blue.css b/docs-preview-494/highlightjs/mono-blue.css new file mode 100644 index 00000000..bc9bceae --- /dev/null +++ b/docs-preview-494/highlightjs/mono-blue.css @@ -0,0 +1,56 @@ +pre code.hljs { + display: block; + overflow-x: auto; + padding: 1em +} +code.hljs { + padding: 3px 5px +} +/* + Five-color theme from a single blue hue. +*/ +.hljs { + background: #eaeef3; + color: #00193a +} +.hljs-keyword, +.hljs-selector-tag, +.hljs-title, +.hljs-section, +.hljs-doctag, +.hljs-name, +.hljs-strong { + font-weight: bold +} +.hljs-comment { + color: #738191 +} +.hljs-string, +.hljs-title, +.hljs-section, +.hljs-built_in, +.hljs-literal, +.hljs-type, +.hljs-addition, +.hljs-tag, +.hljs-quote, +.hljs-name, +.hljs-selector-id, +.hljs-selector-class { + color: #0048ab +} +.hljs-meta, +.hljs-subst, +.hljs-symbol, +.hljs-regexp, +.hljs-attribute, +.hljs-deletion, +.hljs-variable, +.hljs-template-variable, +.hljs-link, +.hljs-bullet { + color: #4c81c9 +} +.hljs-emphasis { + font-style: italic +} \ No newline at end of file diff --git a/docs-preview-494/index.xhtml b/docs-preview-494/index.xhtml new file mode 100644 index 00000000..56a87634 --- /dev/null +++ b/docs-preview-494/index.xhtml @@ -0,0 +1,1018 @@ + + + + + + nvf manual + + + + + + + + +
+
+
+

nvf manual

+

Version v0.8

+
+
+
+ +

Preface

Table of Contents

What is nvf
Bugs & Suggestions

What is nvf

nvf is a highly modular, configurable, extensible and easy to use Neovim +configuration in Nix. Designed for flexibility and ease of use, nvf allows you +to easily configure your fully featured Neovim instance with a few lines of Nix.

+

Bugs & Suggestions

If you notice any issues with nvf, or this documentation, then please consider +reporting them over at the issue tracker. Issues tab, in addition to the +discussions tab is a good place as any to request new features.

You may also consider submitting bugfixes, feature additions and upstreamed +changes that you think are critical over at the pull requests tab.

+
+ +

Try it out

Thanks to the portability of Nix, you can try out nvf without actually +installing it to your machine. Below are the commands you may run to try out +different configurations provided by this flake. As of v0.5, two specialized +configurations are provided:

  • Nix - Nix language server + simple utility plugins

  • Maximal - Variable language servers + utility and decorative plugins

You may try out any of the provided configurations using the nix run command +on a system where Nix is installed.

$ cachix use nvf                   # Optional: it'll save you CPU resources and time
+$ nix run github:notashelf/nvf#nix # will run the default minimal configuration
+

Do keep in mind that this is susceptible to garbage collection meaning it +will be removed from your Nix store once you garbage collect.

Using Prebuilt Configs

$ nix run github:notashelf/nvf#nix
+$ nix run github:notashelf/nvf#maximal
+

Available Configs

Nix

Nix configuration by default provides LSP/diagnostic support for Nix alongside +a set of visual and functional plugins. By running nix run .#, which is the +default package, you will build Neovim with this config.

+

Maximal

Maximal is the ultimate configuration that will enable support for more +commonly used language as well as additional complementary plugins. Keep in +mind, however, that this will pull a lot of dependencies.

Tip

You are strongly recommended to use the binary cache if you would like to try +the Maximal configuration.

+
+ +
+ +
+ +

Default Configs

While you can configure nvf yourself using the builder, you can also use the +pre-built configs that are available. Here are a few default configurations you +can use.

Table of Contents

Maximal
Nix

Maximal

$ nix shell github:notashelf/nvf#maximal test.nix
+

It is the same fully configured Neovim as with the Nix +configuration, but with every supported language enabled.

::: {.note} Running the maximal config will download a lot of packages as it +is downloading language servers, formatters, and more. :::

+

Nix

$ nix run github:notashelf/nvf#nix test.nix
+

Enables all the of Neovim plugins, with language support for specifically Nix. +This lets you see what a fully configured neovim setup looks like without +downloading a whole bunch of language servers and associated tools.

+
+

Installing nvf

There are multiple ways of installing nvf on your system. You may either choose +the standalone installation method, which does not depend on a module system and +may be done on any system that has the Nix package manager or the appropriate +modules for NixOS and home-manager as described in the +module installation section.

Standalone Installation

It is possible to install nvf without depending on NixOS or Home-Manager as the +parent module system, using the neovimConfiguration function exposed in the +extended library. This function will take modules and extraSpecialArgs as +arguments, and return the following schema as a result.

{
+  options = "The options that were available to configure";
+  config = "The outputted configuration";
+  pkgs = "The package set used to evaluate the module";
+  neovim = "The built neovim package";
+}
+

An example flake that exposes your custom Neovim configuration might look like

{
+  inputs = {
+    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
+    nvf.url = "github:notashelf/nvf";
+  };
+
+  outputs = {
+    self,
+    nixpkgs,
+    ...
+  } @ inputs: {
+    packages."x86_64-linux" = let
+        neovimConfigured = (inputs.nvf.lib.neovimConfiguration {
+          inherit (nixpkgs.legacyPackages."x86_64-linux") pkgs;
+          modules = [{
+              config.vim = {
+                # Enable custom theming options
+                theme.enable = true;
+
+                # Enable Treesitter
+                tree-sitter.enable = true;
+
+                # Other options will go here. Refer to the config
+                # reference in Appendix B of the nvf manual.
+                # ...
+              };
+          }];
+        });
+    in {
+      # Set the default package to the wrapped instance of Neovim.
+      # This will allow running your Neovim configuration with
+      # `nix run` and in addition, sharing your configuration with
+      # other users in case your repository is public.
+      default = neovimConfigured.neovim;
+    };
+  };
+}
+

The above setup will allow to set up nvf as a standalone flake, which you can +build independently from your system configuration while also possibly sharing +it with others. The next two chapters will detail specific usage of such a setup +for a package output in the context of NixOS or Home-Manager installation.

Standalone Installation on NixOS

Your built Neovim configuration can be exposed as a flake output to make it +easier to share across machines, repositories and so on. Or it can be added to +your system packages to make it available across your system.

The following is an example installation of nvf as a standalone package with +the default theme enabled. You may use other options inside config.vim in +configModule, but this example will not cover that extensively.

{
+  inputs = {
+    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
+    home-manager.url = "github:nix-community/home-manager";
+    nvf.url = "github:notashelf/nvf";
+  };
+
+  outputs = {nixpkgs, nvf, ...}: let
+    system = "x86_64-linux";
+    pkgs = nixpkgs.legacyPackages.${system};
+    configModule = {
+      # Add any custom options (and do feel free to upstream them!)
+      # options = { ... };
+
+      config.vim = {
+        theme.enable = true;
+        # and more options as you see fit...
+      };
+    };
+
+    customNeovim = nvf.lib.neovimConfiguration {
+      inherit pkgs;
+      modules = [configModule];
+    };
+  in {
+    # This will make the package available as a flake output under 'packages'
+    packages.${system}.my-neovim = customNeovim.neovim;
+
+    # Example nixosConfiguration using the configured Neovim package
+    nixosConfigurations = {
+      yourHostName = nixpkgs.lib.nixosSystem {
+        # ...
+        modules = [
+          # This will make wrapped neovim available in your system packages
+          {environment.systemPackages = [customNeovim.neovim];}
+        ];
+        # ...
+      };
+    };
+  };
+}
+
+

Standalone Installation on Home-Manager

Your built Neovim configuration can be exposed as a flake output to make it +easier to share across machines, repositories and so on. Or it can be added to +your system packages to make it available across your system.

The following is an example installation of nvf as a standalone package with +the default theme enabled. You may use other options inside config.vim in +configModule, but this example will not cover that extensively.

{
+  inputs = {
+    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
+    home-manager.url = "github:nix-community/home-manager";
+    nvf.url = "github:notashelf/nvf";
+  };
+
+  outputs = {nixpkgs, home-manager, nvf, ...}: let
+    system = "x86_64-linux";
+    pkgs = nixpkgs.legacyPackages.${system};
+    configModule = {
+      # Add any custom options (and do feel free to upstream them!)
+      # options = { ... };
+
+      config.vim = {
+        theme.enable = true;
+        # and more options as you see fit...
+      };
+    };
+
+    customNeovim = nvf.lib.neovimConfiguration {
+      inherit pkgs;
+      modules = [configModule];
+    };
+  in {
+    # This will make the package available as a flake output under 'packages'
+    packages.${system}.my-neovim = customNeovim.neovim;
+
+    # Example Home-Manager configuration using the configured Neovim package
+    homeConfigurations = {
+      "your-username@your-hostname" = home-manager.lib.homeManagerConfiguration {
+        # ...
+        modules = [
+          # This will make Neovim available to users using the Home-Manager
+          # configuration. To make the package available to all users, prefer
+          # environment.systemPackages in your NixOS configuration.
+          {home.packages = [customNeovim.neovim];}
+        ];
+        # ...
+      };
+    };
+  };
+}
+
+
+

Module Installation

The below chapters will describe installing nvf as NixOS and Home-Manager +modules. Note that those methods are mutually exclusive, and will likely cause +path collisions if used simultaneously.

NixOS Module

Table of Contents

Example Installation

The NixOS module allows us to customize the different vim options from inside +the NixOS configuration without having to call for the wrapper yourself. It is +the recommended way to use nvf alongside the home-manager module depending +on your needs.

To use it, we first add the input flake.

{
+  inputs = {
+    obsidian-nvim.url = "github:epwalsh/obsidian.nvim";
+    nvf = {
+      url = "github:notashelf/nvf";
+      # you can override input nixpkgs
+      inputs.nixpkgs.follows = "nixpkgs";
+      # you can also override individual plugins
+      # for example:
+      inputs.obsidian-nvim.follows = "obsidian-nvim"; # <- this will use the obsidian-nvim from your inputs
+    };
+  };
+}
+

Followed by importing the NixOS module somewhere in your configuration.

{
+  # assuming nvf is in your inputs and inputs is in the argset
+  # see example below
+  imports = [ inputs.nvf.nixosModules.default ];
+}
+

Example Installation

{
+  inputs = {
+    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
+    nvf.url = "github:notashelf/nvf";
+  };
+
+  outputs = { nixpkgs, nvf, ... }: let
+  system = "x86_64-linux"; in {
+    # ↓ this is your host output in the flake schema
+    nixosConfigurations."yourUsername»" = nixpkgs.lib.nixosSystem {
+      modules = [
+        nvf.nixosModules.default # <- this imports the NixOS module that provides the options
+        ./configuration.nix # <- your host entrypoint
+      ];
+    };
+  };
+}
+

Once the module is properly imported by your host, you will be able to use the +programs.nvf module option anywhere in your configuration in order to +configure nvf.

  programs.nvf = {
+    enable = true;
+    # your settings need to go into the settings attribute set
+    # most settings are documented in the appendix
+    settings = {
+      vim.viAlias = false;
+      vim.vimAlias = true;
+      vim.lsp = {
+        enable = true;
+      };
+    };
+  };
+}
+

Note

nvf exposes a lot of options, most of which are not referenced in the +installation sections of the manual. You may find all available options in the +appendix

+
+ +

Home-Manager Module

Table of Contents

Example Installation

The home-manager module allows us to customize the different vim options from +inside the home-manager configuration without having to call for the wrapper +yourself. It is the recommended way to use nvf alongside the NixOS module +depending on your needs.

To use it, we first add the input flake.

{
+  inputs = {
+    obsidian-nvim.url = "github:epwalsh/obsidian.nvim";
+    nvf = {
+      url = "github:notashelf/nvf";
+      # you can override input nixpkgs
+      inputs.nixpkgs.follows = "nixpkgs";
+      # you can also override individual plugins
+      # for example:
+      inputs.obsidian-nvim.follows = "obsidian-nvim"; # <- this will use the obsidian-nvim from your inputs
+    };
+  };
+}
+

Followed by importing the home-manager module somewhere in your configuration.

{
+  # assuming nvf is in your inputs and inputs is in the argset
+  # see example below
+  imports = [ inputs.nvf.homeManagerModules.default ];
+}
+

Example Installation

{
+  inputs = {
+    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
+    home-manager.url = "github:nix-community/home-manager";
+    nvf.url = "github:notashelf/nvf";
+  };
+
+  outputs = { nixpkgs, home-manager, nvf, ... }: let
+  system = "x86_64-linux"; in {
+    # ↓ this is your home output in the flake schema, expected by home-manager
+    "your-username@your-hostname" = home-manager.lib.homeManagerConfiguration
+      modules = [
+        nvf.homeManagerModules.default # <- this imports the home-manager module that provides the options
+        ./home.nix # <- your home entrypoint
+      ];
+    };
+  };
+}
+

Once the module is properly imported by your host, you will be able to use the +programs.nvf module option anywhere in your configuration in order to +configure nvf.

  programs.nvf = {
+    enable = true;
+    # your settings need to go into the settings attribute set
+    # most settings are documented in the appendix
+    settings = {
+      vim.viAlias = false;
+      vim.vimAlias = true;
+      vim.lsp = {
+        enable = true;
+      };
+    };
+  };
+}
+

Note

nvf exposes a lot of options, most of which are not referenced in the +installation sections of the manual. You may find all available options in the +appendix

+
+ +
+
+

Configuring nvf

Custom Neovim Package

As of v0.5, you may now specify the Neovim package that will be wrapped with +your configuration. This is done with the vim.package option.

{inputs, pkgs, ...}: {
+  # using the neovim-nightly overlay
+  vim.package = inputs.neovim-overlay.packages.${pkgs.system}.neovim;
+}
+

The neovim-nightly-overlay always exposes an unwrapped package. If using a +different source, you are highly recommended to get an “unwrapped” version of +the neovim package, similar to neovim-unwrapped in nixpkgs.

{ pkgs, ...}: {
+  # using the neovim-nightly overlay
+  vim.package = pkgs.neovim-unwrapped;
+}
+
+

Custom Plugins

nvf, by default, exposes a wide variety of plugins as module options for +your convenience and bundles necessary dependencies into nvf’s runtime. In +case a plugin is not available in nvf, you may consider making a pull +request to nvf to include it as a module or you may add it to your +configuration locally.

Adding Plugins

There are multiple ways of adding custom plugins to your nvf configuration.

You can use custom plugins, before they are implemented in the flake. To add a +plugin to the runtime, you need to add it to the vim.startPlugins list +in your configuration.

Adding a plugin to startPlugins will not allow you to configure the plugin +that you have added, but nvf provides multiple way of configuring any custom +plugins that you might have added to your configuration.

Configuring

Just making the plugin to your Neovim configuration available might not always +be enough. In that case, you can write custom lua config using either +config.vim.lazy.plugins.*.setupOpts config.vim.extraPlugins.*.setup or +config.vim.luaConfigRC.

The first option uses an extended version of lz.n’s PluginSpec. setupModule +and setupOpt can be used if the plugin uses a require('module').setup(...) +pattern. Otherwise, the before and after hooks should do what you need.

{
+  config.vim.lazy.plugins = {
+    aerial.nvim = {
+    # ^^^^^^^^^ this name should match the package.pname or package.name
+      package = aerial-nvim;
+
+      setupModule = "aerial";
+      setupOpts = {option_name = false;};
+
+      after = "print('aerial loaded')";
+    };
+  };
+}
+

The second option uses an attribute set, which maps DAG section names to a +custom type, which has the fields package, after, setup. They allow you to +set the package of the plugin, the sections its setup code should be after (note +that the extraPlugins option has its own DAG scope), and the its setup code +respectively. For example:

config.vim.extraPlugins = with pkgs.vimPlugins; {
+  aerial = {
+    package = aerial-nvim;
+    setup = "require('aerial').setup {}";
+  };
+
+  harpoon = {
+    package = harpoon;
+    setup = "require('harpoon').setup {}";
+    after = ["aerial"]; # place harpoon configuration after aerial
+  };
+}
+

The third option also uses an attribute set, but this one is resolved as a DAG +directly. The attribute names denote the section names, and the values lua code. +For example:

{
+  # this will create an "aquarium" section in your init.lua with the contents of your custom config
+  # which will be *appended* to the rest of your configuration, inside your init.vim
+  config.vim.luaConfigRC.aquarium = "vim.cmd('colorscheme aquiarum')";
+}
+

Note

One of the greatest strengths of nvf is the ability to order +snippets of configuration via the DAG system. It will allow specifying positions +of individual sections of configuration as needed. nvf provides helper functions +in the extended library, usually under inputs.nvf.lib.nvim.dag that you may +use.

Please refer to the DAG section in the nvf manual +to find out more about the DAG system.

+

Lazy Method

As of version 0.7, we exposed an API for configuring lazy-loaded plugins via +lz.n and lzn-auto-require.

{
+  config.vim.lazy.plugins = {
+    "aerial.nvim" = {
+      package = pkgs.vimPlugins.aerial-nvim;
+      setupModule = "aerial";
+      setupOpts = {
+        option_name = true;
+      };
+      after = ''
+        -- custom lua code to run after plugin is loaded
+        print('aerial loaded')
+      '';
+
+      # Explicitly mark plugin as lazy. You don't need this if you define one of
+      # the trigger "events" below
+      lazy = true;
+
+      # load on command
+      cmd = ["AerialOpen"];
+
+      # load on event
+      event = ["BufEnter"];
+
+      # load on keymap
+      keys = [
+        {
+          key = "<leader>a";
+          action = ":AerialToggle<CR>";
+        }
+      ];
+    };
+  };
+}
+
+

Non-lazy Method

As of version 0.5, we have a more extensive API for configuring plugins, +under vim.extraPlugins. Instead of using DAGs exposed by the library, you may +use the extra plugin module as follows:

{
+  config.vim.extraPlugins = with pkgs.vimPlugins; {
+    aerial = {
+      package = aerial-nvim;
+      setup = ''
+        require('aerial').setup {
+          -- some lua configuration here
+        }
+      '';
+    };
+
+    harpoon = {
+      package = harpoon;
+      setup = "require('harpoon').setup {}";
+      after = ["aerial"];
+    };
+  };
+}
+
+

Legacy Method

Prior to version v0.5, the method of adding new plugins was adding the plugin +package to vim.startPlugins and add its configuration as a DAG under one of +vim.configRC or vim.luaConfigRC. Users who have not yet updated to 0.5, or +prefer a more hands-on approach may use the old method where the load order of +the plugins is determined by DAGs.

Adding plugins

To add a plugin not available in nvf as a module to your configuration, you may +add it to vim.startPlugins in order to make it available to Neovim at +runtime.

{pkgs, ...}: {
+  # Add a Neovim plugin from Nixpkgs to the runtime.
+  vim.startPlugins = [pkgs.vimPlugins.aerial-nvim];
+}
+

And to configure the added plugin, you can use the luaConfigRC option to +provide configuration as a DAG using the nvf extended library.

{inputs, ...}: let
+  # This assumes you have an input called 'nvf' in your flake inputs
+  # and 'inputs' in your specialArgs. In the case you have passed 'nvf'
+  # to specialArgs, the 'inputs' prefix may be omitted.
+  inherit (inputs.nvf.lib.nvim.dag) entryAnywhere;
+in {
+  vim.luaConfigRC.aerial-nvim= entryAnywhere ''
+    require('aerial').setup {
+      -- your configuration here
+    }
+  '';
+}
+
+
+ +
+
+ +

Custom Inputs

One of the greatest strengths of nvf is its ability to get plugins from +flake inputs and build them locally from any given source. For plugins that do +not require any kind of additional building step, this is a powerful method of +adding plugins to your configuration that are not packaged in nixpkgs, or those +you want to track from source without relying on nixpkgs.

The additional plugins section details the addition +of new plugins to nvf under regular circumstances, i.e. while making a pull +request to the project. You may override those plugin inputs in your own +flake.nix to change source versions, e.g., to use newer versions of plugins +that are not yet updated in nvf.

{
+
+  inputs = {
+    # ...
+
+    # The name here is arbitrary, you can name it whatever.
+    # This will add a plugin input called "your-neodev-input"
+    # that you can reference in a `follows` line.
+    your-neodev-input = {
+      url = "github:folke/neodev.nvim";
+      flake = false;
+    };
+
+    nvf = {
+      url = "github:notashelf/nvf";
+
+      # The name of the input must match for the follows line
+      # plugin-neodev-nvim is what the input is called inside nvf
+      # so you must match the exact name here.
+      inputs.plugin-neodev-nvim.follows = "your-neodev-input";
+    };
+    # ...
+  };
+}
+

This will override the source for the neodev.nvim plugin that is used in nvf +with your own input. You can update your new input via nix flake update or +more specifically nix flake update <name of your input> to keep it up to date.

Warning

While updating plugin inputs, make sure that any configuration that has been +deprecated in newer versions is changed in the plugin’s setupOpts. If you +depend on a new version, requesting a version bump in the issues section is a +more reliable option.

+

Language Support

Table of Contents

LSP Custom Packages/Command

Language specific support means there is a combination of language specific +plugins, treesitter support, nvim-lspconfig language servers, and null-ls +integration. This gets you capabilities ranging from autocompletion to +formatting to diagnostics. The following languages have sections under the +vim.languages attribute.

Adding support for more languages, and improving support for existing ones are +great places where you can contribute with a PR.

LSP Custom Packages/Command

In any of the opt.languages.<language>.lsp.package options you can provide +your own LSP package, or provide the command to launch the language server, as a +list of strings. You can use this to skip automatic installation of a language +server, and instead use the one found in your $PATH during runtime, for +example:

vim.languages.java = {
+  lsp = {
+    enable = true;
+    # this expects jdt-language-server to be in your PATH
+    # or in `vim.extraPackages`
+    package = ["jdt-language-server" "-data" "~/.cache/jdtls/workspace"];
+  };
+}
+
+
+

Using DAGs

We conform to the NixOS options types for the most part, however, a noteworthy +addition for certain options is the +DAG (Directed acyclic graph) +type which is borrowed from home-manager’s extended library. This type is most +used for topologically sorting strings. The DAG type allows the attribute set +entries to express dependency relations among themselves. This can, for example, +be used to control the order of configuration sections in your luaConfigRC.

The below section, mostly taken from the +home-manager manual +explains in more detail the overall usage logic of the DAG type.

entryAnywhere

lib.dag.entryAnywhere (value: T) : DagEntry<T>

Indicates that value can be placed anywhere within the DAG. This is also the +default for plain attribute set entries, that is

foo.bar = {
+  a = lib.dag.entryAnywhere 0;
+}
+

and

foo.bar = {
+  a = 0;
+}
+

are equivalent.

+

entryAfter

lib.dag.entryAfter (afters: list string) (value: T) : DagEntry<T>

Indicates that value must be placed after each of the attribute names in the +given list. For example

foo.bar = {
+  a = 0;
+  b = lib.dag.entryAfter [ "a" ] 1;
+}
+

would place b after a in the graph.

+

entryBefore

lib.dag.entryBefore (befores: list string) (value: T) : DagEntry<T>

Indicates that value must be placed before each of the attribute names in +the given list. For example

foo.bar = {
+  b = lib.dag.entryBefore [ "a" ] 1;
+  a = 0;
+}
+

would place b before a in the graph.

+

entryBetween

lib.dag.entryBetween (befores: list string) (afters: list string) (value: T) : DagEntry<T>

Indicates that value must be placed before the attribute names in the first +list and after the attribute names in the second list. For example

foo.bar = {
+  a = 0;
+  c = lib.dag.entryBetween [ "b" ] [ "a" ] 2;
+  b = 1;
+}
+

would place c before b and after a in the graph.

There are also a set of functions that generate a DAG from a list. These are +convenient when you just want to have a linear list of DAG entries, without +having to manually enter the relationship between each entry. Each of these +functions take a tag as argument and the DAG entries will be named +${tag}-${index}.

+

entriesAnywhere

lib.dag.entriesAnywhere (tag: string) (values: [T]) : Dag<T>

Creates a DAG with the given values with each entry labeled using the given tag. +For example

foo.bar = lib.dag.entriesAnywhere "a" [ 0 1 ];
+

is equivalent to

foo.bar = {
+  a-0 = 0;
+  a-1 = lib.dag.entryAfter [ "a-0" ] 1;
+}
+
+

entriesAfter

lib.dag.entriesAfter (tag: string) (afters: list string) (values: [T]) : Dag<T>

Creates a DAG with the given values with each entry labeled using the given tag. +The list of values are placed are placed after each of the attribute names in +afters. For example

foo.bar =
+  { b = 0; } // lib.dag.entriesAfter "a" [ "b" ] [ 1 2 ];
+

is equivalent to

foo.bar = {
+  b = 0;
+  a-0 = lib.dag.entryAfter [ "b" ] 1;
+  a-1 = lib.dag.entryAfter [ "a-0" ] 2;
+}
+
+

entriesBefore

lib.dag.entriesBefore (tag: string) (befores: list string) (values: [T]) : Dag<T>

Creates a DAG with the given values with each entry labeled using the given tag. +The list of values are placed before each of the attribute names in befores. +For example

foo.bar =
+  { b = 0; } // lib.dag.entriesBefore "a" [ "b" ] [ 1 2 ];
+

is equivalent to

foo.bar = {
+  b = 0;
+  a-0 = 1;
+  a-1 = lib.dag.entryBetween [ "b" ] [ "a-0" ] 2;
+}
+
+

entriesBetween

lib.dag.entriesBetween (tag: string) (befores: list string) (afters: list string) (values: [T]) : Dag<T>

Creates a DAG with the given values with each entry labeled using the given tag. +The list of values are placed before each of the attribute names in befores +and after each of the attribute names in afters. For example

foo.bar =
+  { b = 0; c = 3; } // lib.dag.entriesBetween "a" [ "b" ] [ "c" ] [ 1 2 ];
+

is equivalent to

foo.bar = {
+  b = 0;
+  c = 3;
+  a-0 = lib.dag.entryAfter [ "c" ] 1;
+  a-1 = lib.dag.entryBetween [ "b" ] [ "a-0" ] 2;
+}
+
+
+ +

DAG entries in nvf

From the previous chapter, it should be clear that DAGs are useful, because you +can add code that relies on other code. However, if you don’t know what the +entries are called, it’s hard to do that, so here is a list of the internal +entries in nvf:

vim.luaConfigRC (top-level DAG)

  1. (luaConfigPre) - not a part of the actual DAG, instead, it’s simply +inserted before the rest of the DAG

  2. globalsScript - used to set globals defined in vim.globals

  3. basic - used to set basic configuration options

  4. optionsScript - used to set options defined in vim.o

  5. theme (this is simply placed before pluginConfigs and lazyConfigs, +meaning that surrounding entries don’t depend on it) - used to set up the +theme, which has to be done before other plugins

  6. lazyConfigs - lz.n and lzn-auto-require configs. If vim.lazy.enable +is false, this will contain each plugin’s config instead.

  7. pluginConfigs - the result of the nested vim.pluginRC (internal option, +see the Custom Plugins page for adding your +own plugins) DAG, used to set up internal plugins

  8. extraPluginConfigs - the result of vim.extraPlugins, which is not a +direct DAG, but is converted to, and resolved as one internally

  9. mappings - the result of vim.maps

+
+ +
+

Hacking nvf

nvf is designed for the developer as much as it is designed for the end-user. We +would like for any contributor to be able to propagate their changes, or add new +features to the project with minimum possible friction. As such, below are the +guides and guidelines written to streamline the contribution process and to +ensure that your valuable input integrates into nvf’s development as seamlessly +as possible without leaving any question marks in your head.

This section is directed mainly towards those who wish to contribute code into +the project. If you instead wish to report a bug, or discuss a potential new +feature implementation (which you do not wish to implement yourself) first look +among the already open issues and if no matching issue exists you may open a +new issue and describe your problem/request.

While creating an issue, please try to include as much information as you can, +ideally also include relevant context in which an issue occurs or a feature +should be implemented. If you wish to make a contribution, but feel stuck - +please do not be afraid to submit a pull request, we will help you get it in.

Getting Started

You, naturally, would like to start by forking the repository to get started. If +you are new to Git and GitHub, do have a look at GitHub’s +Fork a repo guide for +instructions on how you can do this. Once you have a fork of nvf, you should +create a separate branch based on the most recent main branch. Give your +branch a reasonably descriptive name (e.g. feature/debugger or +fix/pesky-bug) and you are ready to work on your changes

Implement your changes and commit them to the newly created branch and when you +are happy with the result, and positive that it fulfills our +Contributing Guidelines, push the branch to GitHub and +create a pull request. +The default pull request template available on the nvf repository will guide +you through the rest of the process, and we’ll gently nudge you in the correct +direction if there are any mistakes.

+

Guidelines

If your contribution tightly follows the guidelines, then there is a good chance +it will be merged without too much trouble. Some of the guidelines will be +strictly enforced, others will remain as gentle nudges towards the correct +direction. As we have no automated system enforcing those guidelines, please try +to double check your changes before making your pull request in order to avoid +“faulty” code slipping by.

If you are uncertain how these rules affect the change you would like to make +then feel free to start a discussion in the +discussions tab ideally (but not +necessarily) before you start developing.

Adding Documentation

Most, if not all, changes warrant changes to the documentation. Module options +should be documented with +Nixpkgs-flavoured Markdown, +albeit with exceptions.

::: {.note} As of v0.5, nvf is itself documented using full markdown in +both module options and the manual. With v0.6, this manual has also been +converted to markdown in full. :::

The HTML version of this manual containing both the module option descriptions +and the documentation of nvf (such as this page) can be generated and opened +by typing the following in a shell within a clone of the nvf Git repository:

$ nix build .#docs-html
+$ xdg-open $PWD/result/share/doc/nvf/index.html
+
+

Formatting Code

Make sure your code is formatted as described in +code-style section. To maintain consistency +throughout the project you are encouraged to browse through existing code and +adopt its style also in new code.

+

Formatting Commits

Similar to code style guidelines we encourage a +consistent commit message format as described in +commit style guidelines.

+

Commit Style

The commits in your pull request should be reasonably self-contained. Which +means each and every commit in a pull request should make sense both on its own +and in general context. That is, a second commit should not resolve an issue +that is introduced in an earlier commit. In particular, you will be asked to +amend any commit that introduces syntax errors or similar problems even if they +are fixed in a later commit.

The commit messages should follow the +seven rules, except for +“Capitalize the subject line”. We also ask you to include the affected code +component or module in the first line. A commit message ideally, but not +necessarily, follow the given template from home-manager’s own documentation

  {component}: {description}
+
+  {long description}
+

where {component} refers to the code component (or module) your change +affects, {description} is a very brief description of your change, and +{long description} is an optional clarifying description. As a rare exception, +if there is no clear component, or your change affects many components, then the +{component} part is optional. See +example commit message for a commit message +that fulfills these requirements.

+

Example Commit

The commit +69f8e47e9e74c8d3d060ca22e18246b7f7d988ef +in home-manager contains the following commit message.

starship: allow running in Emacs if vterm is used
+
+The vterm buffer is backed by libvterm and can handle Starship prompts
+without issues.
+

Similarly, if you are contributing to nvf, you would include the scope of +the commit followed by the description:

languages/ruby: init module
+
+Adds a language module for Ruby, adds appropriate formatters and Treesitter grammars
+

Long description can be omitted if the change is too simple to warrant it. A +minor fix in spelling or a formatting change does not warrant long description, +however, a module addition or removal does as you would like to provide the +relevant context, i.e. the reasoning behind it, for your commit.

Finally, when adding a new module, say modules/foo.nix, we use the fixed +commit format foo: add module. You can, of course, still include a long +description if you wish.

In case of nested modules, i.e modules/languages/java.nix you are recommended +to contain the parent as well - for example languages/java: some major change.

+

Code Style

Treewide

Keep lines at a reasonable width, ideally 80 characters or less. This also +applies to string literals and module descriptions and documentation.

+

Nix

nvf is formatted by the +alejandra tool and the formatting is +checked in the pull request and push workflows. Run the nix fmt command inside +the project repository before submitting your pull request.

While Alejandra is mostly opinionated on how code looks after formatting, +certain changes are done at the user’s discretion based on how the original code +was structured.

Please use one line code for attribute sets that contain only one subset. For +example:

# parent modules should always be unfolded
+# which means module = { value = ... } instead of module.value = { ... }
+module = {
+  value = mkEnableOption "some description" // { default = true; }; # merges can be done inline where possible
+
+    # same as parent modules, unfold submodules
+    subModule = {
+        # this is an option that contains more than one nested value
+        someOtherValue = mkOption {
+            type = lib.types.bool;
+            description = "Some other description";
+            default = true;
+        };
+    };
+}
+

If you move a line down after the merge operator, Alejandra will automatically +unfold the whole merged attrset for you, which we do not want.

module = {
+  key = mkEnableOption "some description" // {
+    default = true; # we want this to be inline
+  }; # ...
+}
+

For lists, it is mostly up to your own discretion how you want to format them, +but please try to unfold lists if they contain multiple items and especially if +they are to include comments.

# this is ok
+acceptableList = [
+  item1 # comment
+  item2
+  item3 # some other comment
+  item4
+];
+
+# this is not ok
+listToBeAvoided = [item1 item2 /* comment */ item3 item4];
+
+# this is ok
+acceptableList = [item1 item2];
+
+# this is also ok if the list is expected to contain more elements
+acceptableList= [
+  item1
+  item2
+  # more items if needed...
+];
+
+
+ +
+ +

Testing Changes

Once you have made your changes, you will need to test them thoroughly. If it is +a module, add your module option to configuration.nix (located in the root of +this project) inside neovimConfiguration. Enable it, and then run the maximal +configuration with nix run .#maximal -Lv to check for build errors. If neovim +opens in the current directory without any error messages (you can check the +output of :messages inside neovim to see if there are any errors), then your +changes are good to go. Open your pull request, and it will be reviewed as soon +as possible.

If it is not a new module, but a change to an existing one, then make sure the +module you have changed is enabled in the maximal configuration by editing +configuration.nix, and then run it with nix run .#maximal -Lv. Same +procedure as adding a new module will apply here.

+

Keybinds

As of 0.4, there exists an API for writing your own keybinds and a couple of +useful utility functions are available in the +extended standard library. The +following section contains a general overview to how you may utilize said +functions.

Custom Key Mappings Support for a Plugin

To set a mapping, you should define it in vim.keymaps.

An example, simple keybinding, can look like this:

{
+  vim.keymaps = [
+    {
+      key = "<leader>wq";
+      mode = ["n"];
+      action = ":wq<CR>";
+      silent = true;
+      desc = "Save file and quit";
+    }
+  ];
+}
+

There are many settings available in the options. Please refer to the +documentation to +see a list of them.

nvf provides a helper function, so that you don’t have to write the +mapping attribute sets every time:

  • mkKeymap, which mimics neovim’s vim.keymap.set function

You can read the source code of some modules to see them in action, but the +usage should look something like this:

# plugindefinition.nix
+{lib, ...}: let
+  inherit (lib.options) mkEnableOption;
+  inherit (lib.nvim.binds) mkMappingOption;
+in {
+  options.vim.plugin = {
+    enable = mkEnableOption "Enable plugin";
+
+    # Mappings should always be inside an attrset called mappings
+    mappings = {
+      workspaceDiagnostics = mkMappingOption "Workspace diagnostics [trouble]" "<leader>lwd";
+      documentDiagnostics = mkMappingOption "Document diagnostics [trouble]" "<leader>ld";
+      lspReferences = mkMappingOption "LSP References [trouble]" "<leader>lr";
+      quickfix = mkMappingOption "QuickFix [trouble]" "<leader>xq";
+      locList = mkMappingOption "LOCList [trouble]" "<leader>xl";
+      symbols = mkMappingOption "Symbols [trouble]" "<leader>xs";
+    };
+}
+
# config.nix
+{
+  config,
+  lib,
+  options,
+  ...
+}: let
+  inherit (lib.modules) mkIf;
+  inherit (lib.nvim.binds) mkKeymap;
+
+  cfg = config.vim.plugin;
+
+  keys = cfg.mappings;
+  inherit (options.vim.lsp.trouble) mappings;
+in {
+  config = mkIf cfg.enable {
+    vim.keymaps = [
+      (mkKeymap "n" keys.workspaceDiagnostics "<cmd>Trouble toggle diagnostics<CR>" {desc = mappings.workspaceDiagnostics.description;})
+      (mkKeymap "n" keys.documentDiagnostics "<cmd>Trouble toggle diagnostics filter.buf=0<CR>" {desc = mappings.documentDiagnostics.description;})
+      (mkKeymap "n" keys.lspReferences "<cmd>Trouble toggle lsp_references<CR>" {desc = mappings.lspReferences.description;})
+      (mkKeymap "n" keys.quickfix "<cmd>Trouble toggle quickfix<CR>" {desc = mappings.quickfix.description;})
+      (mkKeymap "n" keys.locList "<cmd>Trouble toggle loclist<CR>" {desc = mappings.locList.description;})
+      (mkKeymap "n" keys.symbols "<cmd>Trouble toggle symbols<CR>" {desc = mappings.symbols.description;})
+    ];
+  };
+}
+

Note

If you have come across a plugin that has an API that doesn’t seem to easily +allow custom keybindings, don’t be scared to implement a draft PR. We’ll help +you get it done.

+
+ +

Adding Plugins

To add a new Neovim plugin, first add the source url in the inputs section of +flake.nix with the prefix plugin-

{
+  inputs = {
+    # ...
+    plugin-neodev-nvim = {
+      url = "github:folke/neodev.nvim";
+      flake = false;
+    };
+    # ...
+  };
+}
+

Prepending plugin- to the name of the input will allow nvf to automatically +discover inputs that are marked as plugins, and make them available in +vim.startPlugins or other areas that require a very specific plugin type as it +is defined in https://github.com/notashelf/nvf/blob/v0.8/lib/types/plugins.nix

The addition of the plugin- prefix will allow nvf to autodiscover the +input from the flake inputs automatically, allowing you to refer to it in areas +that require a very specific plugin type as defined in lib/types/plugins.nix

You can now reference this plugin using its string name, the plugin will be +built with the name and source URL from the flake input, allowing you to refer +to it as a string.

config.vim.startPlugins = ["neodev-nvim"];
+

Modular setup options

Most plugins is initialized with a call to require('plugin').setup({...}).

We use a special function that lets you easily add support for such setup +options in a modular way: mkPluginSetupOption.

Once you have added the source of the plugin as shown above, you can define the +setup options like this:

# in modules/.../your-plugin/your-plugin.nix
+
+{lib, ...}:
+let
+  inherit (lib.types) bool int;
+  inherit (lib.nvim.types) mkPluginSetupOption;
+in {
+  options.vim.your-plugin = {
+    setupOpts = mkPluginSetupOption "plugin name" {
+      enable_feature_a = mkOption {
+        type = bool;
+        default = false;
+        # ...
+      };
+
+      number_option = mkOption {
+        type = int;
+        default = 3;
+        # ...
+      };
+    };
+  };
+}
+
# in modules/.../your-plugin/config.nix
+{lib, config, ...}:
+let
+  cfg = config.vim.your-plugin;
+in {
+  vim.luaConfigRC = lib.nvim.dag.entryAnywhere ''
+    require('plugin-name').setup(${lib.nvim.lua.toLuaObject cfg.setupOpts})
+  '';
+}
+

This above config will result in this lua script:

require('plugin-name').setup({
+  enable_feature_a = false,
+  number_option = 3,
+})
+

Now users can set any of the pre-defined option field, and can also add their +own fields!

# in user's config
+{
+  vim.your-plugin.setupOpts = {
+    enable_feature_a = true;
+    number_option = 4;
+    another_field = "hello";
+    size = { # nested fields work as well
+      top = 10;
+    };
+  };
+}
+
+

Details of toLuaObject

As you’ve seen above, toLuaObject is used to convert our nix attrSet +cfg.setupOpts, into a lua table. Here are some rules of the conversion:

  1. nix null converts to lua nil

  2. number and strings convert to their lua counterparts

  3. nix attrSet/list convert into lua tables

  4. you can write raw lua code using lib.generators.mkLuaInline. This function +is part of nixpkgs.

Example:

vim.your-plugin.setupOpts = {
+  on_init = lib.generators.mkLuaInline ''
+    function()
+      print('we can write lua!')
+    end
+  '';
+}
+
+

Lazy plugins

If the plugin can be lazy-loaded, vim.lazy.plugins should be used to add it. +Lazy plugins are managed by lz.n.

# in modules/.../your-plugin/config.nix
+{lib, config, ...}:
+let
+  cfg = config.vim.your-plugin;
+in {
+  vim.lazy.plugins.your-plugin = {
+    # instead of vim.startPlugins, use this:
+    package = "your-plugin";
+
+    # if your plugin uses the `require('your-plugin').setup{...}` pattern
+    setupModule = "your-plugin";
+    inherit (cfg) setupOpts;
+
+    # events that trigger this plugin to be loaded
+    event = ["DirChanged"];
+    cmd = ["YourPluginCommand"];
+
+    # keymaps
+    keys = [
+      # we'll cover this in detail in the keymaps section
+      {
+        key = "<leader>d";
+        mode = "n";
+        action = ":YourPluginCommand";
+      }
+    ];
+  };
+;
+}
+

This results in the following lua code:

require('lz.n').load({
+  {
+    "name-of-your-plugin",
+    after = function()
+      require('your-plugin').setup({--[[ your setupOpts ]]})
+    end,
+
+    event = {"DirChanged"},
+    cmd = {"YourPluginCommand"},
+    keys = {
+      {"<leader>d", ":YourPluginCommand", mode = {"n"}},
+    },
+  }
+})
+

A full list of options can be found +[here](https://notashelf.github.io/nvf/options.html#opt-vim.lazy.plugins

+
+ +
+
+
+ + + \ No newline at end of file diff --git a/docs-preview-494/options.html b/docs-preview-494/options.html new file mode 100644 index 00000000..f530b6db --- /dev/null +++ b/docs-preview-494/options.html @@ -0,0 +1,39062 @@ + + + + + + Appendix B. Neovim Flake Configuration Options + + + + + + + +

Appendix B. Neovim Flake Configuration Options

Below are the module options provided by nvf, in no particular order. Most +options will include useful comments, warnings or setup tips on how a module +option is meant to be used as well as examples in complex cases.

+ +
+
+ + _module.args + + +
+
+

Additional arguments passed to each module in addition to ones +like lib, config, +and pkgs, modulesPath.

This option is also available to all submodules. Submodules do not +inherit args from their parent module, nor do they provide args to +their parent module or sibling submodules. The sole exception to +this is the argument name which is provided by +parent modules to a submodule and contains the attribute name +the submodule is bound to, or a unique generated name if it is +not bound to an attribute.

Some arguments are already passed by default, of which the +following cannot be changed with this option:

  • lib: The nixpkgs library.

  • config: The results of all options after merging the values from all modules together.

  • options: The options declared in all modules.

  • specialArgs: The specialArgs argument passed to evalModules.

  • All attributes of specialArgs

    Whereas option values can generally depend on other option values +thanks to laziness, this does not apply to imports, which +must be computed statically before anything else.

    For this reason, callers of the module system can provide specialArgs +which are available during import resolution.

    For NixOS, specialArgs includes +modulesPath, which allows you to import +extra modules from the nixpkgs package tree without having to +somehow make the module aware of the location of the +nixpkgs or NixOS directories.

    { modulesPath, ... }: {
    +  imports = [
    +    (modulesPath + "/profiles/minimal.nix")
    +  ];
    +}
    +

For NixOS, the default value for this option includes at least this argument:

  • pkgs: The nixpkgs package set according to +the nixpkgs.pkgs option.

+ +

Type: +lazy attribute set of raw value

+ +

Declared by:

+ + +
+ +<nixpkgs/lib/modules.nix> + +
+
+
+ + vim.enableEditorconfig + + +
+
+

Follow editorconfig rules in current directory

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/basic.nix> + +
+
+
+ + vim.enableLuaLoader + + +
+
+

the experimental Lua module loader to speed up the start up process

If true, this will enable the experimental Lua module loader which:

  • overrides loadfile

  • adds the lua loader using the byte-compilation cache

  • adds the libs loader

  • removes the default Neovim loader

Note

The Lua module loader is disabled by default. Before setting this option, please +take a look at the official documentation. This option may be enabled by +default in the future.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.package + + +
+
+

The neovim package to use for the wrapper. This +corresponds to the package that will be wrapped +with your plugins and settings.

Warning

You will need to use an unwrapped package for this +option to work as intended. Using an already wrapped +package here may yield undesirable results.

+ +

Type: +package

+ +

Default: +<derivation neovim-unwrapped-0.10.2>

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/build/options.nix> + +
+
+
+ + vim.additionalRuntimePaths + + +
+
+

Additional runtime paths that will be appended to the +active runtimepath of the Neovim. This can be used to +add additional lookup paths for configs, plugins, spell +languages and other things you would generally place in +your $HOME/.config/nvim.

This is meant as a declarative alternative to throwing +files into ~/.config/nvim and having the Neovim +wrapper pick them up. For more details on +vim.o.runtimepath, and what paths to use; please see +the official documentation

+ +

Type: +list of (path or string)

+ +

Default: +[ ]

+ +

Example:

[
+  # absolute path, as a string - impure
+  "$HOME/.config/nvim-extra"
+
+  # relative path, as a path - pure
+  ./nvim
+
+  # source type path - pure and reproducible
+  (builtins.source {
+    path = ./runtime;
+    name = "nvim-runtime";
+  })
+]
+
+
+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.assistant.chatgpt.enable + + +
+
+

Whether to enable ChatGPT AI assistant. Requires the environment variable OPENAI_API_KEY to be set.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/chatgpt/chatgpt.nix> + +
+
+
+ + vim.assistant.chatgpt.mappings.addTests + + +
+
+

[ChatGPT] Add tests

+ +

Type: +null or string

+ +

Default: +"<leader>aa"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/chatgpt/chatgpt.nix> + +
+
+
+ + vim.assistant.chatgpt.mappings.chatGpt + + +
+
+

ChatGPT

+ +

Type: +null or string

+ +

Default: +"<leader>ac"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/chatgpt/chatgpt.nix> + +
+
+
+ + vim.assistant.chatgpt.mappings.docstring + + +
+
+

[ChatGPT] Docstring

+ +

Type: +null or string

+ +

Default: +"<leader>ad"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/chatgpt/chatgpt.nix> + +
+
+
+ + vim.assistant.chatgpt.mappings.editWithInstructions + + +
+
+

[ChatGPT] Edit with instructions

+ +

Type: +null or string

+ +

Default: +"<leader>ae"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/chatgpt/chatgpt.nix> + +
+
+
+ + vim.assistant.chatgpt.mappings.explain + + +
+
+

[ChatGPT] Explain code

+ +

Type: +null or string

+ +

Default: +"<leader>ax"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/chatgpt/chatgpt.nix> + +
+
+
+ + vim.assistant.chatgpt.mappings.fixBugs + + +
+
+

[ChatGPT] Fix bugs

+ +

Type: +null or string

+ +

Default: +"<leader>af"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/chatgpt/chatgpt.nix> + +
+
+
+ + vim.assistant.chatgpt.mappings.grammarCorrection + + +
+
+

[ChatGPT] Grammar correction

+ +

Type: +null or string

+ +

Default: +"<leader>ag"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/chatgpt/chatgpt.nix> + +
+
+
+ + vim.assistant.chatgpt.mappings.keyword + + +
+
+

[ChatGPT] Keywords

+ +

Type: +null or string

+ +

Default: +"<leader>ak"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/chatgpt/chatgpt.nix> + +
+
+
+ + vim.assistant.chatgpt.mappings.optimize + + +
+
+

[ChatGPT] Optimize code

+ +

Type: +null or string

+ +

Default: +"<leader>ao"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/chatgpt/chatgpt.nix> + +
+
+
+ + vim.assistant.chatgpt.mappings.readabilityanalysis + + +
+
+

[ChatGPT] Code reability analysis

+ +

Type: +null or string

+ +

Default: +"<leader>al"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/chatgpt/chatgpt.nix> + +
+
+
+ + vim.assistant.chatgpt.mappings.roxygenEdit + + +
+
+

[ChatGPT] Roxygen edit

+ +

Type: +null or string

+ +

Default: +"<leader>ar"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/chatgpt/chatgpt.nix> + +
+
+
+ + vim.assistant.chatgpt.mappings.summarize + + +
+
+

[ChatGPT] Summarize

+ +

Type: +null or string

+ +

Default: +"<leader>as"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/chatgpt/chatgpt.nix> + +
+
+
+ + vim.assistant.chatgpt.mappings.translate + + +
+
+

[ChatGPT] Translate

+ +

Type: +null or string

+ +

Default: +"<leader>at"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/chatgpt/chatgpt.nix> + +
+
+
+ + vim.assistant.chatgpt.setupOpts + + +
+
+

Option table to pass into the setup function of chatgpt

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/chatgpt/chatgpt.nix> + +
+
+
+ + vim.assistant.copilot.enable + + +
+
+

Whether to enable GitHub Copilot AI assistant.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.cmp.enable + + +
+
+

Whether to enable nvim-cmp integration for GitHub Copilot.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.mappings.panel.accept + + +
+
+

Accept suggestion

+ +

Type: +null or string

+ +

Default: +"<CR>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.mappings.panel.jumpNext + + +
+
+

Jump to next suggestion

+ +

Type: +null or string

+ +

Default: +"]]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.mappings.panel.jumpPrev + + +
+
+

Jump to previous suggestion

+ +

Type: +null or string

+ +

Default: +"[["

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.mappings.panel.open + + +
+
+

Open suggestions

+ +

Type: +null or string

+ +

Default: +"<M-CR>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.mappings.panel.refresh + + +
+
+

Refresh suggestions

+ +

Type: +null or string

+ +

Default: +"gr"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.mappings.suggestion.accept + + +
+
+

Accept suggetion

+ +

Type: +null or string

+ +

Default: +"<M-l>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.mappings.suggestion.acceptLine + + +
+
+

Accept next line

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.mappings.suggestion.acceptWord + + +
+
+

Accept next word

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.mappings.suggestion.dismiss + + +
+
+

Dismiss suggestion

+ +

Type: +null or string

+ +

Default: +"<C-]>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.mappings.suggestion.next + + +
+
+

Next suggestion

+ +

Type: +null or string

+ +

Default: +"<M-]>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.mappings.suggestion.prev + + +
+
+

Previous suggestion

+ +

Type: +null or string

+ +

Default: +"<M-[>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.setupOpts + + +
+
+

Option table to pass into the setup function of Copilot

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.setupOpts.copilot_node_command + + +
+
+

The command that will be executed to initiate nodejs for GitHub Copilot. +Recommended to leave as default.

+ +

Type: +string

+ +

Default: +"\${pkgs.nodejs-slim.out}/bin/node"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.setupOpts.panel.enabled + + +
+
+

Whether to enable Completion Panel.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.setupOpts.panel.layout.position + + +
+
+

Panel position

+ +

Type: +one of “bottom”, “top”, “left”, “right”

+ +

Default: +"bottom"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.setupOpts.panel.layout.ratio + + +
+
+

Panel size

+ +

Type: +floating point number

+ +

Default: +0.4

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.assistant.copilot.setupOpts.suggestion.enabled + + +
+
+

Whether to enable Suggestions.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/assistant/copilot/copilot.nix> + +
+
+
+ + vim.autocomplete.nvim-cmp.enable + + +
+
+

Whether to enable nvim-cmp.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/completion/nvim-cmp/nvim-cmp.nix> + +
+
+
+ + vim.autocomplete.nvim-cmp.format + + +
+
+

The function used to customize the completion menu entries. This is +outside of setupOpts to allow for an easier integration with +lspkind.nvim.

See :help cmp-config.formatting.format.

+ +

Type: +null or (luaInline)

+ +

Default:

function(entry, vim_item)
+  vim_item.menu = (${toLuaObject config.vim.autocomplete.nvim-cmp.sources})[entry.source.name]
+  return vim_item
+end
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/completion/nvim-cmp/nvim-cmp.nix> + +
+
+
+ + vim.autocomplete.nvim-cmp.mappings.close + + +
+
+

Close [nvim-cmp]

+ +

Type: +null or string

+ +

Default: +"<C-e>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/completion/nvim-cmp/nvim-cmp.nix> + +
+
+
+ + vim.autocomplete.nvim-cmp.mappings.complete + + +
+
+

Complete [nvim-cmp]

+ +

Type: +null or string

+ +

Default: +"<C-Space>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/completion/nvim-cmp/nvim-cmp.nix> + +
+
+
+ + vim.autocomplete.nvim-cmp.mappings.confirm + + +
+
+

Confirm [nvim-cmp]

+ +

Type: +null or string

+ +

Default: +"<CR>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/completion/nvim-cmp/nvim-cmp.nix> + +
+
+
+ + vim.autocomplete.nvim-cmp.mappings.next + + +
+
+

Next item [nvim-cmp]

+ +

Type: +null or string

+ +

Default: +"<Tab>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/completion/nvim-cmp/nvim-cmp.nix> + +
+
+
+ + vim.autocomplete.nvim-cmp.mappings.previous + + +
+
+

Previous item [nvim-cmp]

+ +

Type: +null or string

+ +

Default: +"<S-Tab>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/completion/nvim-cmp/nvim-cmp.nix> + +
+
+
+ + vim.autocomplete.nvim-cmp.mappings.scrollDocsDown + + +
+
+

Scroll docs down [nvim-cmp]

+ +

Type: +null or string

+ +

Default: +"<C-f>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/completion/nvim-cmp/nvim-cmp.nix> + +
+
+
+ + vim.autocomplete.nvim-cmp.mappings.scrollDocsUp + + +
+
+

Scroll docs up [nvim-cmp]

+ +

Type: +null or string

+ +

Default: +"<C-d>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/completion/nvim-cmp/nvim-cmp.nix> + +
+
+
+ + vim.autocomplete.nvim-cmp.setupOpts + + +
+
+

Option table to pass into the setup function of the autocomplete plugin

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/completion/nvim-cmp/nvim-cmp.nix> + +
+
+
+ + vim.autocomplete.nvim-cmp.setupOpts.completion.completeopt + + +
+
+

A comma-separated list of options for completion.

See :help completeopt for the complete list.

+ +

Type: +string

+ +

Default: +"menu,menuone,noinsert"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/completion/nvim-cmp/nvim-cmp.nix> + +
+
+
+ + vim.autocomplete.nvim-cmp.setupOpts.sorting.comparators + + +
+
+

The comparator functions used for sorting completions.

You can either pass a valid inline lua function +(see :help cmp-config.sorting.comparators), +or a string, in which case the builtin comparator with that name will +be used.

A deprio function and a kinds +(require("cmp.types").lsp.CompletionItemKind) variable is provided +above setupOpts. By passing a type to the function, the returned +function will be a comparator that always ranks the specified kind the +lowest.

+ +

Type: +mergeless list of (string or (luaInline))

+ +

Default:

[
+  {
+    _type = "lua-inline";
+    expr = "deprio(kinds.Text)";
+  }
+  {
+    _type = "lua-inline";
+    expr = "deprio(kinds.Snippet)";
+  }
+  "offset"
+  "exact"
+  "score"
+  "kind"
+  "length"
+  "sort_text"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/completion/nvim-cmp/nvim-cmp.nix> + +
+
+
+ + vim.autocomplete.nvim-cmp.sourcePlugins + + +
+
+

List of source plugins used by nvim-cmp.

+ +

Type: +list of (null or package or one of “alpha-nvim”, “base16”, “bufdelete-nvim”, “catppuccin”, “ccc”, “cellular-automaton”, “chatgpt”, “cheatsheet-nvim”, “cinnamon-nvim”, “cmp-buffer”, “cmp-luasnip”, “cmp-nvim-lsp”, “cmp-path”, “cmp-treesitter”, “codewindow-nvim”, “comment-nvim”, “copilot-cmp”, “copilot-lua”, “crates-nvim”, “csharpls-extended”, “dashboard-nvim”, “diffview-nvim”, “dracula”, “dressing-nvim”, “elixir-tools”, “fastaction-nvim”, “fidget-nvim”, “flutter-tools”, “friendly-snippets”, “gesture-nvim”, “gitsigns-nvim”, “glow-nvim”, “gruvbox”, “highlight-undo”, “hop-nvim”, “icon-picker-nvim”, “image-nvim”, “indent-blankline”, “leap-nvim”, “lsp-lines”, “lsp-signature”, “lspkind”, “lspsaga”, “lua-utils-nvim”, “lualine”, “luasnip”, “lz-n”, “lzn-auto-require”, “mind-nvim”, “minimap-vim”, “modes-nvim”, “neo-tree-nvim”, “neocord”, “neodev-nvim”, “neorg”, “neorg-telescope”, “new-file-template-nvim”, “noice-nvim”, “none-ls”, “nui-nvim”, “nvim-autopairs”, “nvim-bufferline-lua”, “nvim-cmp”, “nvim-colorizer-lua”, “nvim-cursorline”, “nvim-dap”, “nvim-dap-go”, “nvim-dap-ui”, “nvim-docs-view”, “nvim-lightbulb”, “nvim-lspconfig”, “nvim-metals”, “nvim-navbuddy”, “nvim-navic”, “nvim-neoclip”, “nvim-nio”, “nvim-notify”, “nvim-scrollbar”, “nvim-session-manager”, “nvim-surround”, “nvim-tree-lua”, “nvim-treesitter-context”, “nvim-ts-autotag”, “nvim-web-devicons”, “obsidian-nvim”, “omnisharp-extended”, “onedark”, “orgmode-nvim”, “otter-nvim”, “oxocarbon”, “pathlib-nvim”, “plenary-nvim”, “precognition-nvim”, “project-nvim”, “registers”, “rose-pine”, “rtp-nvim”, “run-nvim”, “rustaceanvim”, “smartcolumn”, “sqls-nvim”, “tabular”, “telescope”, “tiny-devicons-auto-colors”, “todo-comments”, “toggleterm-nvim”, “tokyonight”, “trouble”, “ts-error-translator”, “typst-preview-nvim”, “vim-dirtytalk”, “vim-fugitive”, “vim-illuminate”, “vim-markdown”, “vim-repeat”, “vim-startify”, “which-key”, “nvim-treesitter”, “flutter-tools-patched”, “vim-repeat”)

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/completion/nvim-cmp/nvim-cmp.nix> + +
+
+
+ + vim.autocomplete.nvim-cmp.sources + + +
+
+

The list of sources used by nvim-cmp

+ +

Type: +attribute set of (null or string)

+ +

Default: +{ }

+ +

Example:

{
+  nvim-cmp = null;
+  buffer = "[Buffer]";
+}
+
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/completion/nvim-cmp/nvim-cmp.nix> + +
+
+
+ + vim.autopairs.nvim-autopairs.enable + + +
+
+

Whether to enable autopairs.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/autopairs/nvim-autopairs/nvim-autopairs.nix> + +
+
+
+ + vim.autopairs.nvim-autopairs.setupOpts + + +
+
+

Option table to pass into the setup function of nvim-autopairs

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/autopairs/nvim-autopairs/nvim-autopairs.nix> + +
+
+
+ + vim.bell + + +
+
+

Set how bells are handled. Options: on, visual or none

+ +

Type: +one of “none”, “visual”, “on”

+ +

Default: +"none"

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/basic.nix> + +
+
+
+ + vim.binds.cheatsheet.enable + + +
+
+

Whether to enable cheatsheet-nvim: searchable cheatsheet for nvim using telescope.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/binds/cheatsheet/cheatsheet.nix> + +
+
+
+ + vim.binds.whichKey.enable + + +
+
+

Whether to enable which-key keybind helper menu.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/binds/which-key/which-key.nix> + +
+
+
+ + vim.binds.whichKey.register + + +
+
+

Register label for which-key keybind helper menu

+ +

Type: +attribute set of (null or string)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/binds/which-key/which-key.nix> + +
+
+
+ + vim.binds.whichKey.setupOpts + + +
+
+

Option table to pass into the setup function of which-key

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/binds/which-key/which-key.nix> + +
+
+
+ + vim.binds.whichKey.setupOpts.notify + + +
+
+

Show a warning when issues were detected with mappings

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/binds/which-key/which-key.nix> + +
+
+
+ + vim.binds.whichKey.setupOpts.preset + + +
+
+

The default preset for the which-key window

+ +

Type: +one of “classic”, “modern”, “helix”

+ +

Default: +"modern"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/binds/which-key/which-key.nix> + +
+
+
+ + vim.binds.whichKey.setupOpts.replace + + +
+
+

Functions/Lua Patterns for formatting the labels

+ +

Type: +attribute set

+ +

Default:

{
+  "<cr>" = "RETURN";
+  "<leader>" = "SPACE";
+  "<space>" = "SPACE";
+  "<tab>" = "TAB";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/binds/which-key/which-key.nix> + +
+
+
+ + vim.binds.whichKey.setupOpts.win.border + + +
+
+

Which-key window border style

+ +

Type: +string

+ +

Default: +"rounded"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/binds/which-key/which-key.nix> + +
+
+
+ + vim.comments.comment-nvim.enable + + +
+
+

Whether to enable smart and powerful comment plugin for neovim comment-nvim.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/comments/comment-nvim/comment-nvim.nix> + +
+
+
+ + vim.comments.comment-nvim.mappings.toggleCurrentBlock + + +
+
+

Toggle current block comment

+ +

Type: +null or string

+ +

Default: +"gbc"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/comments/comment-nvim/comment-nvim.nix> + +
+
+
+ + vim.comments.comment-nvim.mappings.toggleCurrentLine + + +
+
+

Toggle current line comment

+ +

Type: +null or string

+ +

Default: +"gcc"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/comments/comment-nvim/comment-nvim.nix> + +
+
+
+ + vim.comments.comment-nvim.mappings.toggleOpLeaderBlock + + +
+
+

Toggle block comment

+ +

Type: +null or string

+ +

Default: +"gb"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/comments/comment-nvim/comment-nvim.nix> + +
+
+
+ + vim.comments.comment-nvim.mappings.toggleOpLeaderLine + + +
+
+

Toggle line comment

+ +

Type: +null or string

+ +

Default: +"gc"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/comments/comment-nvim/comment-nvim.nix> + +
+
+
+ + vim.comments.comment-nvim.mappings.toggleSelectedBlock + + +
+
+

Toggle selected block

+ +

Type: +null or string

+ +

Default: +"gb"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/comments/comment-nvim/comment-nvim.nix> + +
+
+
+ + vim.comments.comment-nvim.mappings.toggleSelectedLine + + +
+
+

Toggle selected comment

+ +

Type: +null or string

+ +

Default: +"gc"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/comments/comment-nvim/comment-nvim.nix> + +
+
+
+ + vim.comments.comment-nvim.setupOpts + + +
+
+

Option table to pass into the setup function of Comment-nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/comments/comment-nvim/comment-nvim.nix> + +
+
+
+ + vim.comments.comment-nvim.setupOpts.mappings.basic + + +
+
+

Whether to enable basic mappings.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/comments/comment-nvim/comment-nvim.nix> + +
+
+
+ + vim.comments.comment-nvim.setupOpts.mappings.extra + + +
+
+

Whether to enable extra mappings.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/comments/comment-nvim/comment-nvim.nix> + +
+
+
+ + vim.dashboard.alpha.enable + + +
+
+

Whether to enable fast and fully programmable greeter for neovim [alpha.mvim].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/alpha/alpha.nix> + +
+
+
+ + vim.dashboard.dashboard-nvim.enable + + +
+
+

Whether to enable Fancy and Blazing Fast start screen plugin of neovim [dashboard.nvim].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/dashboard-nvim/dashboard-nvim.nix> + +
+
+
+ + vim.dashboard.dashboard-nvim.setupOpts + + +
+
+

Option table to pass into the setup function of dashboard.nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/dashboard-nvim/dashboard-nvim.nix> + +
+
+
+ + vim.dashboard.startify.enable + + +
+
+

Whether to enable dashboard via vim-startify.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.bookmarks + + +
+
+

List of book marks to disaply on start page

+ +

Type: +list of (attribute set)

+ +

Default: +[ ]

+ +

Example:

{
+  c = "~/.vimrc";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.changeDirCmd + + +
+
+

Command to change the current window with. Can be cd, lcd or tcd

+ +

Type: +one of “cd”, “lcd”, “tcd”

+ +

Default: +"lcd"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.changeToDir + + +
+
+

Should vim change to the directory of the file you open

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.changeToVCRoot + + +
+
+

Should vim change to the version control root when opening a file

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.commands + + +
+
+

Commands that are presented to the user on startify page

+ +

Type: +list of (string or (attribute set) or list of string)

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.customFooter + + +
+
+

Text to place in the footer

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.customHeader + + +
+
+

Text to place in the header

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.customIndices + + +
+
+

Specify a list of default characters to use instead of numbers

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.disableOnStartup + + +
+
+

Prevent startify from opening on startup but can be called with :Startify

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.filesNumber + + +
+
+

How many files to list

+ +

Type: +signed integer

+ +

Default: +10

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.lists + + +
+
+

Specify the lists and in what order they are displayed on startify.

+ +

Type: +list of (attribute set)

+ +

Default:

[
+  {
+    header = [
+      "MRU"
+    ];
+    type = "files";
+  }
+  {
+    header = [
+      "MRU Current Directory"
+    ];
+    type = "dir";
+  }
+  {
+    header = [
+      "Sessions"
+    ];
+    type = "sessions";
+  }
+  {
+    header = [
+      "Bookmarks"
+    ];
+    type = "bookmarks";
+  }
+  {
+    header = [
+      "Commands"
+    ];
+    type = "commands";
+  }
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.paddingLeft + + +
+
+

Number of spaces used for left padding.

+ +

Type: +signed integer

+ +

Default: +3

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.sessionAutoload + + +
+
+

Make startify auto load Session.vim files from the current directory

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.sessionBeforeSave + + +
+
+

Commands to run before saving a session

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.sessionDeleteBuffers + + +
+
+

Delete all buffers when loading or closing a session

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.sessionDir + + +
+
+

Directory to save and load sessions from

+ +

Type: +string

+ +

Default: +"~/.vim/session"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.sessionPersistence + + +
+
+

Persist session before leaving vim or switching session

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.sessionRemoveLines + + +
+
+

Patterns to remove from session files

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.sessionSavecmds + + +
+
+

List of commands to run when loading a session.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.sessionSavevars + + +
+
+

List of variables to save into a session file.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.sessionSort + + +
+
+

Set if you want items sorted by date rather than alphabetically

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.skipList + + +
+
+

List of regex patterns to exclude from MRU lists

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.skipListServer + + +
+
+

List of vim servers to not load startify for

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.unsafe + + +
+
+

Turns on unsafe mode for Startify. Stops resolving links, checking files are readable and filtering bookmark list

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.updateOldFiles + + +
+
+

Set if you want startify to always update and not just when neovim closes

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.dashboard.startify.useEnv + + +
+
+

Show environment variables in path if name is shorter than value

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/dashboard/startify/startify.nix> + +
+
+
+ + vim.debugMode.enable + + +
+
+

Whether to enable debug mode.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/debug.nix> + +
+
+
+ + vim.debugMode.level + + +
+
+

Set verbosity level of Neovim while debug mode is enabled.

Value must be be one of the levels expected by Neovim’s +verbose option

+ +

Type: +one of 2, 3, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16

+ +

Default: +16

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/debug.nix> + +
+
+
+ + vim.debugMode.logFile + + +
+
+

Set the log file that will be used to store verbose messages +set by the verbose option.

+ +

Type: +null or path

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/debug.nix> + +
+
+
+ + vim.debugger.nvim-dap.enable + + +
+
+

Whether to enable debugging via nvim-dap.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.mappings.continue + + +
+
+

Continue

+ +

Type: +null or string

+ +

Default: +"<leader>dc"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.mappings.goDown + + +
+
+

Go down stacktrace

+ +

Type: +null or string

+ +

Default: +"<leader>dvi"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.mappings.goUp + + +
+
+

Go up stacktrace

+ +

Type: +null or string

+ +

Default: +"<leader>dvo"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.mappings.hover + + +
+
+

Hover

+ +

Type: +null or string

+ +

Default: +"<leader>dh"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.mappings.restart + + +
+
+

Restart

+ +

Type: +null or string

+ +

Default: +"<leader>dR"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.mappings.runLast + + +
+
+

Re-run Last Debug Session

+ +

Type: +null or string

+ +

Default: +"<leader>d."

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.mappings.runToCursor + + +
+
+

Continue to the current cursor

+ +

Type: +null or string

+ +

Default: +"<leader>dgc"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.mappings.stepBack + + +
+
+

Step back

+ +

Type: +null or string

+ +

Default: +"<leader>dgk"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.mappings.stepInto + + +
+
+

Step into function

+ +

Type: +null or string

+ +

Default: +"<leader>dgi"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.mappings.stepOut + + +
+
+

Step out of function

+ +

Type: +null or string

+ +

Default: +"<leader>dgo"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.mappings.stepOver + + +
+
+

Next step

+ +

Type: +null or string

+ +

Default: +"<leader>dgj"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.mappings.terminate + + +
+
+

Terminate

+ +

Type: +null or string

+ +

Default: +"<leader>dq"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.mappings.toggleBreakpoint + + +
+
+

Toggle breakpoint

+ +

Type: +null or string

+ +

Default: +"<leader>db"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.mappings.toggleDapUI + + +
+
+

Toggle DAP-UI

+ +

Type: +null or string

+ +

Default: +"<leader>du"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.mappings.toggleRepl + + +
+
+

Toggle Repl

+ +

Type: +null or string

+ +

Default: +"<leader>dr"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.sources + + +
+
+

List of debuggers to install

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.ui.enable + + +
+
+

Whether to enable UI extension for nvim-dap.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.ui.autoStart + + +
+
+

Automatically Opens and Closes DAP-UI upon starting/closing a debugging session

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.debugger.nvim-dap.ui.setupOpts + + +
+
+

Option table to pass into the setup function of nvim-dap-ui

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/debugger/nvim-dap/nvim-dap.nix> + +
+
+
+ + vim.disableArrows + + +
+
+

Set to prevent arrow keys from moving cursor

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/basic.nix> + +
+
+
+ + vim.extraLuaFiles + + +
+
+

Additional lua files that will be sourced by Neovim. +Takes both absolute and relative paths, all of which +will be called via the luafile command in Neovim.

See lua-commands +on the Neovim documentation for more details.

Warning

All paths passed to this option must be valid. If Neovim cannot +resolve the path you are attempting to source, then your configuration +will error, and Neovim will not start. Please ensure that all paths +are correct before using this option.

+ +

Type: +list of (path or string)

+ +

Default: +[ ]

+ +

Example:

[
+  # absolute path, as a string - impure
+  "$HOME/.config/nvim/my-lua-file.lua"
+
+  # relative path, as a path - pure
+  ./nvim/my-lua-file.lua
+
+  # source type path - pure and reproducible
+  (builtins.source {
+    path = ./nvim/my-lua-file.lua;
+    name = "my-lua-file";
+  })
+]
+
+
+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.extraPackages + + +
+
+

List of additional packages to make available to the Neovim +wrapper.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Example: +"[pkgs.fzf pkgs.ripgrep]"

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/build/options.nix> + +
+
+
+ + vim.extraPlugins + + +
+
+

A list of plugins and their configurations that will be +set up after builtin plugins.

This option takes a special type that allows you to order +your custom plugins using nvf’s modified DAG library.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Example:

with pkgs.vimPlugins; {
+  aerial = {
+    package = aerial-nvim;
+    setup = "require('aerial').setup {}";
+  };
+
+  harpoon = {
+    package = harpoon;
+    setup = "require('harpoon').setup {}";
+    after = ["aerial"]; # place harpoon configuration after aerial
+  };
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/build/options.nix> + +
+
+
+ + vim.extraPlugins.<name>.package + + +
+
+

Plugin Package.

+ +

Type: +null or package or one of “alpha-nvim”, “base16”, “bufdelete-nvim”, “catppuccin”, “ccc”, “cellular-automaton”, “chatgpt”, “cheatsheet-nvim”, “cinnamon-nvim”, “cmp-buffer”, “cmp-luasnip”, “cmp-nvim-lsp”, “cmp-path”, “cmp-treesitter”, “codewindow-nvim”, “comment-nvim”, “copilot-cmp”, “copilot-lua”, “crates-nvim”, “csharpls-extended”, “dashboard-nvim”, “diffview-nvim”, “dracula”, “dressing-nvim”, “elixir-tools”, “fastaction-nvim”, “fidget-nvim”, “flutter-tools”, “friendly-snippets”, “gesture-nvim”, “gitsigns-nvim”, “glow-nvim”, “gruvbox”, “highlight-undo”, “hop-nvim”, “icon-picker-nvim”, “image-nvim”, “indent-blankline”, “leap-nvim”, “lsp-lines”, “lsp-signature”, “lspkind”, “lspsaga”, “lua-utils-nvim”, “lualine”, “luasnip”, “lz-n”, “lzn-auto-require”, “mind-nvim”, “minimap-vim”, “modes-nvim”, “neo-tree-nvim”, “neocord”, “neodev-nvim”, “neorg”, “neorg-telescope”, “new-file-template-nvim”, “noice-nvim”, “none-ls”, “nui-nvim”, “nvim-autopairs”, “nvim-bufferline-lua”, “nvim-cmp”, “nvim-colorizer-lua”, “nvim-cursorline”, “nvim-dap”, “nvim-dap-go”, “nvim-dap-ui”, “nvim-docs-view”, “nvim-lightbulb”, “nvim-lspconfig”, “nvim-metals”, “nvim-navbuddy”, “nvim-navic”, “nvim-neoclip”, “nvim-nio”, “nvim-notify”, “nvim-scrollbar”, “nvim-session-manager”, “nvim-surround”, “nvim-tree-lua”, “nvim-treesitter-context”, “nvim-ts-autotag”, “nvim-web-devicons”, “obsidian-nvim”, “omnisharp-extended”, “onedark”, “orgmode-nvim”, “otter-nvim”, “oxocarbon”, “pathlib-nvim”, “plenary-nvim”, “precognition-nvim”, “project-nvim”, “registers”, “rose-pine”, “rtp-nvim”, “run-nvim”, “rustaceanvim”, “smartcolumn”, “sqls-nvim”, “tabular”, “telescope”, “tiny-devicons-auto-colors”, “todo-comments”, “toggleterm-nvim”, “tokyonight”, “trouble”, “ts-error-translator”, “typst-preview-nvim”, “vim-dirtytalk”, “vim-fugitive”, “vim-illuminate”, “vim-markdown”, “vim-repeat”, “vim-startify”, “which-key”, “nvim-treesitter”, “flutter-tools-patched”, “vim-repeat”

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/build/options.nix> + +
+
+
+ + vim.extraPlugins.<name>.after + + +
+
+

Setup this plugin after the following ones.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/build/options.nix> + +
+
+
+ + vim.extraPlugins.<name>.setup + + +
+
+

Lua code to run during setup.

+ +

Type: +strings concatenated with “\n”

+ +

Default: +""

+ +

Example: +"require('aerial').setup {}"

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/build/options.nix> + +
+
+
+ + vim.filetree.neo-tree.enable + + +
+
+

Whether to enable filetree via neo-tree.nvim.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts + + +
+
+

Option table to pass into the setup function of neo-tree

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.enable_cursor_hijack + + +
+
+

Whether to enable cursor hijacking.

If enabled neotree will keep the cursor on the first letter of the filename when moving in the tree +.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.enable_diagnostics + + +
+
+

Whether to enable diagnostics.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.enable_git_status + + +
+
+

Whether to enable git status.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.enable_modified_markers + + +
+
+

Whether to enable markers for files with unsaved changes…

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.enable_opened_markers + + +
+
+

Whether to enable tracking of opened files.

Required for components.name.highlight_opened_files +.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.enable_refresh_on_write + + +
+
+

Whether to enable Refresh the tree when a file is written.

Only used if use_libuv_file_watcher is false. +.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.add_blank_line_at_top + + +
+
+

Whether to add a blank line at the top of the tree

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.auto_clean_after_session_restore + + +
+
+

Whether to automatically clean up broken neo-tree buffers +saved in sessions

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.default_source + + +
+
+

You can choose a specific source.

last here which indicates the last used source

+ +

Type: +string

+ +

Default: +"filesystem"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.filesystem.hijack_netrw_behavior + + +
+
+

Hijack Netrw behavior

+ +

Type: +one of “disabled”, “open_default”, “open_current”

+ +

Default: +"open_default"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.git_status_async + + +
+
+

Whether to enable async git status.

This will make the git status check async and will not block the UI. +.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.hide_root_node + + +
+
+

Whether to hide the root node of the tree

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.log_level + + +
+
+

Log level for the plugin.

+ +

Type: +one of “trace”, “debug”, “info”, “warn”, “error”, “fatal”

+ +

Default: +"info"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.log_to_file + + +
+
+

Must be either a boolean or a path to your log file.

Use :NeoTreeLogs to show the file

+ +

Type: +boolean or string

+ +

Default: +false

+ +

Example: +/tmp/neo-tree.log

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.open_files_do_not_replace_types + + +
+
+

A list of filetypes that should not be replaced when opening a file

+ +

Type: +list of string

+ +

Default:

[
+  "terminal"
+  "Trouble"
+  "qf"
+  "edgy"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.open_files_in_last_window + + +
+
+

Whether to open files in the last window

If disabled, neo-tree will open files in top left window

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.neo-tree.setupOpts.retain_hidden_root_indent + + +
+
+

Whether to retain the indent of the hidden root node

IF the root node is hidden, keep the indentation anyhow. +This is needed if you use expanders because they render in the indent.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/neo-tree/neo-tree.nix> + +
+
+
+ + vim.filetree.nvimTree.enable + + +
+
+

Whether to enable filetree via nvim-tree.lua.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.mappings.findFile + + +
+
+

Find file in NvimTree

+ +

Type: +null or string

+ +

Default: +"<leader>tg"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.mappings.focus + + +
+
+

Focus NvimTree

+ +

Type: +null or string

+ +

Default: +"<leader>tf"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.mappings.refresh + + +
+
+

Refresh NvimTree

+ +

Type: +null or string

+ +

Default: +"<leader>tr"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.mappings.toggle + + +
+
+

Toggle NvimTree

+ +

Type: +null or string

+ +

Default: +"<leader>t"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.openOnSetup + + +
+
+

Open when vim is started on a directory

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts + + +
+
+

Option table to pass into the setup function of Nvim Tree

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions + + +
+
+

Configuration for various actions.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.change_dir + + +
+
+

vim change-directory behaviour

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.change_dir.enable + + +
+
+

Change the working directory when changing directories in the tree.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.change_dir.global + + +
+
+

Use :cd instead of :lcd when changing directories. +Consider that this might cause issues with the nvimTree.syncRootWithCwd option.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.change_dir.restrict_above_cwd + + +
+
+

Restrict changing to a directory above the global current working directory.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.expand_all + + +
+
+

Configuration for expand_all behaviour.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.expand_all.exclude + + +
+
+

A list of directories that should not be expanded automatically.

+ +

Type: +list of string

+ +

Default:

[
+  ".git"
+  "target"
+  "build"
+  "result"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.expand_all.max_folder_discovery + + +
+
+

Limit the number of folders being explored when expanding every folders. +Avoids hanging neovim when running this action on very large folders.

+ +

Type: +signed integer

+ +

Default: +300

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.file_popup + + +
+
+

Configuration for file_popup behaviour.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.file_popup.open_win_config + + +
+
+

Floating window config for file_popup. See |nvim_open_win| for more details.

+ +

Type: +attribute set

+ +

Default:

{
+  border = "rounded";
+  col = 1;
+  relative = "cursor";
+  row = 1;
+  style = "minimal";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.open_file + + +
+
+

Configuration options for opening a file from nvim-tree.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.open_file.eject + + +
+
+

Prevent new opened file from opening in the same window as the tree.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.open_file.quit_on_open + + +
+
+

Closes the explorer when opening a file.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.open_file.resize_window + + +
+
+

Resizes the tree when opening a file. Previously view.auto_resize

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.open_file.window_picker + + +
+
+

window_picker

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.open_file.window_picker.enable + + +
+
+

Enable the window picker. If this feature is not enabled, files will open in window from which you last opened the tree.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.open_file.window_picker.chars + + +
+
+

A string of chars used as identifiers by the window picker.

+ +

Type: +string

+ +

Default: +"ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.open_file.window_picker.exclude.buftype + + +
+
+

A list of buftypes to exclude from the window picker.

+ +

Type: +list of string

+ +

Default:

[
+  "nofile"
+  "terminal"
+  "help"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.open_file.window_picker.exclude.filetype + + +
+
+

A list of filetypes to exclude from the window picker.

+ +

Type: +list of string

+ +

Default:

[
+  "notify"
+  "packer"
+  "qf"
+  "diff"
+  "fugitive"
+  "fugitiveblame"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.open_file.window_picker.picker + + +
+
+

Change the default window picker, can be a string "default" or a function. +The function should return the window id that will open the node, +or nil if an invalid window is picked or user cancelled the action.

The picker may create a new window.

+ +

Type: +string

+ +

Default: +"default"

+ +

Example:

-- with s1n7ax/nvim-window-picker plugin
+require('window-picker').pick_window,
+
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.remove_file.close_window + + +
+
+

Close any window displaying a file when removing the file from the tree

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.actions.use_system_clipboard + + +
+
+

A boolean value that toggle the use of system clipboard when copy/paste +function are invoked. When enabled, copied text will be stored in registers +‘+’ (system), otherwise, it will be stored in ‘1’ and ‘"’.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.auto_reload_on_write + + +
+
+

Auto reload tree on write

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.diagnostics + + +
+
+

Show LSP and COC diagnostics in the signcolumn +Note that the modified sign will take precedence over the diagnostics signs.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.diagnostics.enable + + +
+
+

Whether to enable diagnostics view in the signcolumn…

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.diagnostics.debounce_delay + + +
+
+

Idle milliseconds between diagnostic event and update.

+ +

Type: +signed integer

+ +

Default: +50

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.diagnostics.icons + + +
+
+

Icons for diagnostic severity.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.diagnostics.icons.error + + +
+
+

Icon used for error diagnostic.

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.diagnostics.icons.hint + + +
+
+

Icon used for hint diagnostic.

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.diagnostics.icons.info + + +
+
+

Icon used for info diagnostic.

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.diagnostics.icons.warning + + +
+
+

Icon used for warning diagnostic.

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.diagnostics.severity + + +
+
+

Severity for which the diagnostics will be displayed. See :help diagnostic-severity

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.diagnostics.severity.max + + +
+
+

Maximum severity.

+ +

Type: +one of “HINT”, “INFO”, “WARNING”, “ERROR”

+ +

Default: +"ERROR"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.diagnostics.severity.min + + +
+
+

Minimum severity.

+ +

Type: +one of “HINT”, “INFO”, “WARNING”, “ERROR”

+ +

Default: +"HINT"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.diagnostics.show_on_dirs + + +
+
+

Show diagnostic icons on parent directories.

+ +

Type: +unspecified value

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.diagnostics.show_on_open_dirs + + +
+
+

Show diagnostics icons on directories that are open. +Only relevant when diagnostics.show_on_dirs is true.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.disable_netrw + + +
+
+

Disables netrw and replaces it with tree

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.filesystem_watchers + + +
+
+

Will use file system watcher (libuv fs_event) to watch the filesystem for changes. +Using this will disable BufEnter / BufWritePost events in nvim-tree which +were used to update the whole tree. With this feature, the tree will be +updated only for the appropriate folder change, resulting in better +performance.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.filesystem_watchers.enable + + +
+
+

Enable filesystem watchers.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.filesystem_watchers.debounce_delay + + +
+
+

Idle milliseconds between filesystem change and action.

+ +

Type: +signed integer

+ +

Default: +50

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.filesystem_watchers.ignore_dirs + + +
+
+

List of vim regex for absolute directory paths that will not be watched. +Backslashes must be escaped e.g. "my-project/\\.build$". +Useful when path is not in .gitignore or git integration is disabled.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.filters + + +
+
+

Filtering options.

+ +

Type: +submodule

+ +

Default:

{
+  dotfiles = false;
+  exclude = [ ];
+  git_clean = false;
+  git_ignored = false;
+  no_buffer = false;
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.filters.dotfiles + + +
+
+

Do not show dotfiles: files starting with a .

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.filters.exclude + + +
+
+

List of directories or files to exclude from filtering: always show them.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.filters.git_clean + + +
+
+

Do not show files with no git status. This will show ignored files when +nvimTree.filters.gitIgnored is set, as they are effectively dirty.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.filters.git_ignored + + +
+
+

Ignore files based on .gitignore. Requires git.enableto betrue`

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.filters.no_buffer + + +
+
+

Do not show files that have no buflisted() buffer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.git.enable + + +
+
+

Whether to enable Git integration with icons and colors…

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.git.disable_for_dirs + + +
+
+

Disable git integration when git top-level matches these paths. +May be relative, evaluated via ":p"

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.git.show_on_dirs + + +
+
+

Show git icons on parent directories.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.git.show_on_open_dirs + + +
+
+

Show git icons on directories that are open.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.git.timeout + + +
+
+

Kills the git process after some time if it takes too long. +Git integration will be disabled after 10 git jobs exceed this timeout.

+ +

Type: +signed integer

+ +

Default: +400

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.hijack_cursor + + +
+
+

Hijack the cursor in the tree to put it at the start of the filename

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.hijack_directories.enable + + +
+
+

Enable the hijack_directories feature. Disable this option if you use vim-dirvish or dirbuf.nvim. +If hijack_netrw and disable_netrw are false, this feature will be disabled.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.hijack_directories.auto_open + + +
+
+

Opens the tree if the tree was previously closed.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.hijack_netrw + + +
+
+

Prevents netrw from automatically opening when opening directories

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.hijack_unnamed_buffer_when_opening + + +
+
+

Open nvimtree in place of the unnamed buffer if it’s empty.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.live_filter + + +
+
+

Configurations for the live_filtering feature. +The live filter allows you to filter the tree nodes dynamically, based on +regex matching (see vim.regex). +This feature is bound to the f key by default. +The filter can be cleared with the F key by default.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.live_filter.always_show_folders + + +
+
+

Whether to filter folders or not.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.live_filter.prefix + + +
+
+

Prefix of the filter displayed in the buffer.

+ +

Type: +string

+ +

Default: +"[FILTER]: "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.modified + + +
+
+

Indicate which file have unsaved modification.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.modified.enable + + +
+
+

Whether to enable Modified files with icons and color highlight…

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.modified.show_on_dirs + + +
+
+

Show modified icons on parent directories.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.modified.show_on_open_dirs + + +
+
+

Show modified icons on directories that are open.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.notify + + +
+
+

Configuration for notifications.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.notify.absolute_path + + +
+
+

Whether to use absolute paths or item names in fs action notifications.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.notify.threshold + + +
+
+

Specify minimum notification level, uses the values from vim.log.levels

+ +

Type: +one of “ERROR”, “WARNING”, “INFO”, “DEBUG”

+ +

Default: +"INFO"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.prefer_startup_root + + +
+
+

Prefer startup root directory when updating root directory of the tree. +Only relevant when update_focused_file.update_root is true

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.reload_on_bufenter + + +
+
+

Automatically reloads the tree on BufEnter nvim-tree.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.add_trailing + + +
+
+

Appends a trailing slash to folder names.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.full_name + + +
+
+

Display node whose name length is wider than the width of nvim-tree window in floating window.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.group_empty + + +
+
+

Compact folders that only contain a single folder into one node in the file tree.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.highlight_git + + +
+
+

Enable file highlight for git attributes using NvimTreeGit highlight groups. +Requires nvimTree.git.enable +This can be used with or without the icons.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.highlight_modified + + +
+
+

Highlight modified files in the tree using NvimTreeNormal highlight group. +Requires nvimTree.view.highlightOpenedFiles

+ +

Type: +one of “none”, “icon”, “name”, “all”

+ +

Default: +"none"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.highlight_opened_files + + +
+
+

Highlight icons and/or names for bufloaded() files using the +NvimTreeOpenedFile highlight group.

+ +

Type: +one of “none”, “icon”, “name”, “all”

+ +

Default: +"none"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons + + +
+
+

Configuration options for icons.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.git_placement + + +
+
+

Place where the git icons will be rendered. signcolumn requires view.signcolumn to be enabled.

+ +

Type: +one of “before”, “after”, “signcolumn”

+ +

Default: +"before"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.glyphs + + +
+
+

Configuration options for icon glyphs. +NOTE: Do not set any glyphs to more than two characters if it’s going +to appear in the signcolumn.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.glyphs.default + + +
+
+

Glyph for files. Will be overridden by nvim-web-devicons if available.

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.glyphs.folder + + +
+
+

Glyphs for directories. Recommended to use the defaults unless you know what you are doing.

+ +

Type: +attribute set

+ +

Default:

{
+  arrow_closed = "";
+  arrow_open = "";
+  default = "";
+  empty = "";
+  empty_open = "";
+  open = "";
+  symlink = "";
+  symlink_open = "";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.glyphs.git + + +
+
+

Glyphs for git status.

+ +

Type: +attribute set

+ +

Default:

{
+  deleted = "";
+  ignored = "◌";
+  renamed = "➜";
+  staged = "✓";
+  unmerged = "";
+  unstaged = "✗";
+  untracked = "★";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.glyphs.modified + + +
+
+

Icon to display for modified files.

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.glyphs.symlink + + +
+
+

Glyph for symlinks.

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.modified_placement + + +
+
+

Place where the modified icons will be rendered. signcolumn requires view.signcolumn to be enabled.

+ +

Type: +one of “before”, “after”, “signcolumn”

+ +

Default: +"after"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.padding + + +
+
+

Inserted between icon and filename

+ +

Type: +string

+ +

Default: +" "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.show.file + + +
+
+

Show an icon before the file name. nvim-web-devicons will be used if available.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.show.folder + + +
+
+

Show an icon before the folder name.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.show.folder_arrow + + +
+
+

Show a small arrow before the folder node. Arrow will be a part of the +node when using renderer.indent_markers.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.show.git + + +
+
+

Show a git status icon, see renderer.icons.gitPlacement +Requires git.enable to be true.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.show.modified + + +
+
+

Show a modified icon, see renderer.icons.modifiedPlacement +Requires modified.enable to be true.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.symlink_arrow + + +
+
+

Used as a separator between symlinks’ source and target.

+ +

Type: +string

+ +

Default: +" ➛ "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.icons.webdev_colors + + +
+
+

Use the webdev icon colors, otherwise NvimTreeFileIcon

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.indent_markers + + +
+
+

Configuration options for tree indent markers.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.indent_markers.enable + + +
+
+

Whether to enable Display indent markers when folders are open…

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.indent_markers.icons + + +
+
+

Individual elements of the indent markers

+ +

Type: +attribute set

+ +

Default:

{
+  bottom = "─";
+  corner = "└";
+  edge = "│";
+  item = "│";
+  none = "";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.indent_markers.inline_arrows + + +
+
+

Display folder arrows in the same column as indent marker when using renderer.icons.show.folder_arrow

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.indent_width + + +
+
+

Number of spaces for an each tree nesting level. Minimum 1.

+ +

Type: +signed integer

+ +

Default: +2

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.root_folder_label + + +
+
+

In what format to show root folder. See :help filename-modifiers for +available string options. +Set to false to hide the root folder.

Function is passed the absolute path of the root folder and should +return a string. e.g. +my_root_folder_label = function(path) +return “…/” … vim.fn.fnamemodify(path, “:t”) +end

+ +

Type: +string or boolean

+ +

Default: +false

+ +

Example: +"\"\":~:s?$?/..?\""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.special_files + + +
+
+

A list of filenames that gets highlighted with `NvimTreeSpecialFile

+ +

Type: +list of string

+ +

Default:

[
+  "Cargo.toml"
+  "README.md"
+  "readme.md"
+  "Makefile"
+  "MAKEFILE"
+  "flake.nix"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.renderer.symlink_destination + + +
+
+

Whether to show the destination of the symlink.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.respect_buf_cwd + + +
+
+

Will change cwd of nvim-tree to that of new buffer’s when opening nvim-tree.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.root_dirs + + +
+
+

Preferred root directories. Only relevant when updateFocusedFile.updateRoot is true

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.select_prompts + + +
+
+

Whether to enable Use vim.ui.select style prompts. Necessary when using a UI prompt decorator such as dressing.nvim or telescope-ui-select.nvim +.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.sort.folders_first + + +
+
+

Sort folders before files. Has no effect when sort.sorter is a function.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.sort.sorter + + +
+
+

How files within the same directory are sorted.

+ +

Type: +one of “name”, “extension”, “modification_time”, “case_sensitive”, “suffix”, “filetype”

+ +

Default: +"name"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.sync_root_with_cwd + + +
+
+

Changes the tree root directory on DirChanged and refreshes the tree. +Only relevant when updateFocusedFile.updateRoot is true

(previously update_cwd)

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.system_open.args + + +
+
+

Optional argument list.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.system_open.cmd + + +
+
+

The open command itself

+ +

Type: +string

+ +

Default: +"\${pkgs.xdg-utils}/bin/xdg-open"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.tab + + +
+
+

Configuration for tab behaviour.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.tab.sync + + +
+
+

Configuration for syncing nvim-tree across tabs.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.tab.sync.close + + +
+
+

Closes the tree across all tabpages when the tree is closed.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.tab.sync.ignore + + +
+
+

List of filetypes or buffer names on new tab that will prevent +nvimTree.tab.sync.open and nvimTree.tab.sync.close

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.tab.sync.open + + +
+
+

Opens the tree automatically when switching tabpage or opening a new +tabpage if the tree was previously open.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.trash + + +
+
+

Configuration options for trashing.

+ +

Type: +submodule

+ +

Default:

{
+  cmd = "\${pkgs.glib}/bin/gio trash";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.trash.cmd + + +
+
+

The command used to trash items

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.ui + + +
+
+

General UI configuration.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.ui.confirm.remove + + +
+
+

Prompt before removing.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.ui.confirm.trash + + +
+
+

Prompt before trash.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.update_focused_file + + +
+
+

Update the focused file on BufEnter, un-collapses the folders recursively +until it finds the file.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.update_focused_file.enable + + +
+
+

update focused file

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.update_focused_file.ignore_list + + +
+
+

List of buffer names and filetypes that will not update the root dir +of the tree if the file isn’t found under the current root directory. +Only relevant when update_focused_file.update_root and +update_focused_file.enable are true.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.update_focused_file.update_root + + +
+
+

Update the root directory of the tree if the file is not under current +root directory. It prefers vim’s cwd and root_dirs. +Otherwise it falls back to the folder containing the file. +Only relevant when update_focused_file.enable is true

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.view + + +
+
+

Window / buffer setup.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.view.centralize_selection + + +
+
+

If true, reposition the view so that the current node is initially centralized when entering nvim-tree.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.view.cursorline + + +
+
+

Enable cursorline in nvim-tree window.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.view.debounce_delay + + +
+
+

Idle milliseconds before some reload / refresh operations. +Increase if you experience performance issues around screen refresh.

+ +

Type: +signed integer

+ +

Default: +15

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.view.float + + +
+
+

Configuration options for floating window.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.view.float.enable + + +
+
+

If true, tree window will be floating.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.view.float.open_win_config + + +
+
+

Floating window config. See :h nvim_open_win() for more details.

+ +

Type: +attribute set

+ +

Default:

{
+  border = "rounded";
+  col = 1;
+  height = 30;
+  relative = "editor";
+  row = 1;
+  width = 30;
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.view.float.quit_on_focus_loss + + +
+
+

Close the floating tree window when it loses focus.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.view.number + + +
+
+

Print the line number in front of each line.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.view.preserve_window_proportions + + +
+
+

Preserves window proportions when opening a file. +If false, the height and width of windows other than nvim-tree will be equalized.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.view.relativenumber + + +
+
+

Show the line number relative to the line with the cursor in front of each line. +If the option view.number is also true, the number on the cursor line +will be the line number instead of 0.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.view.side + + +
+
+

Side of the tree.

+ +

Type: +one of “left”, “right”

+ +

Default: +"left"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.view.signcolumn + + +
+
+

Show diagnostic sign column. Value can be "yes", "auto" or"no".

+ +

Type: +one of “yes”, “auto”, “no”

+ +

Default: +"yes"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.filetree.nvimTree.setupOpts.view.width + + +
+
+

Width of the window: can be a % string, a number representing columns, a +function or a table.

A table (an attribute set in our case, see example) indicates that the view should be dynamically sized based on the +longest line.

+ +

Type: +signed integer or (attribute set)

+ +

Default: +30

+ +

Example:

{
+  min = 30;
+  max = -1;
+  padding = 1;
+}
+
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/filetree/nvimtree/nvimtree.nix> + +
+
+
+ + vim.gestures.gesture-nvim.enable + + +
+
+

Whether to enable gesture-nvim: mouse gestures.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/gestures/gesture-nvim/gesture-nvim.nix> + +
+
+
+ + vim.gestures.gesture-nvim.mappings.draw + + +
+
+

Start drawing [gesture.nvim]

+ +

Type: +null or string

+ +

Default: +"<LeftDrag>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/gestures/gesture-nvim/gesture-nvim.nix> + +
+
+
+ + vim.gestures.gesture-nvim.mappings.finish + + +
+
+

Finish drawing [gesture.nvim]

+ +

Type: +null or string

+ +

Default: +"<LeftRelease>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/gestures/gesture-nvim/gesture-nvim.nix> + +
+
+
+ + vim.git.enable + + +
+
+

Whether to enable git integration suite.

Enabling this option will enable the following plugins:

  • gitsigns

  • vim-fugitive +.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git> + +
+
+
+ + vim.git.gitsigns.enable + + +
+
+

Whether to enable gitsigns.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/gitsigns/gitsigns.nix> + +
+
+
+ + vim.git.gitsigns.codeActions.enable + + +
+
+

Whether to enable gitsigns codeactions through null-ls.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/gitsigns/gitsigns.nix> + +
+
+
+ + vim.git.gitsigns.mappings.blameLine + + +
+
+

Blame line [Gitsigns]

+ +

Type: +null or string

+ +

Default: +"<leader>hb"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/gitsigns/gitsigns.nix> + +
+
+
+ + vim.git.gitsigns.mappings.diffProject + + +
+
+

Diff project [Gitsigns]

+ +

Type: +null or string

+ +

Default: +"<leader>hD"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/gitsigns/gitsigns.nix> + +
+
+
+ + vim.git.gitsigns.mappings.diffThis + + +
+
+

Diff this [Gitsigns]

+ +

Type: +null or string

+ +

Default: +"<leader>hd"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/gitsigns/gitsigns.nix> + +
+
+
+ + vim.git.gitsigns.mappings.nextHunk + + +
+
+

Next hunk [Gitsigns]

+ +

Type: +null or string

+ +

Default: +"]c"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/gitsigns/gitsigns.nix> + +
+
+
+ + vim.git.gitsigns.mappings.previewHunk + + +
+
+

Preview hunk [Gitsigns]

+ +

Type: +null or string

+ +

Default: +"<leader>hP"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/gitsigns/gitsigns.nix> + +
+
+
+ + vim.git.gitsigns.mappings.previousHunk + + +
+
+

Previous hunk [Gitsigns]

+ +

Type: +null or string

+ +

Default: +"[c"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/gitsigns/gitsigns.nix> + +
+
+
+ + vim.git.gitsigns.mappings.resetBuffer + + +
+
+

Reset buffer [Gitsigns]

+ +

Type: +null or string

+ +

Default: +"<leader>hR"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/gitsigns/gitsigns.nix> + +
+
+
+ + vim.git.gitsigns.mappings.resetHunk + + +
+
+

Reset hunk [Gitsigns]

+ +

Type: +null or string

+ +

Default: +"<leader>hr"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/gitsigns/gitsigns.nix> + +
+
+
+ + vim.git.gitsigns.mappings.stageBuffer + + +
+
+

Stage buffer [Gitsigns]

+ +

Type: +null or string

+ +

Default: +"<leader>hS"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/gitsigns/gitsigns.nix> + +
+
+
+ + vim.git.gitsigns.mappings.stageHunk + + +
+
+

Stage hunk [Gitsigns]

+ +

Type: +null or string

+ +

Default: +"<leader>hs"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/gitsigns/gitsigns.nix> + +
+
+
+ + vim.git.gitsigns.mappings.toggleBlame + + +
+
+

Toggle blame [Gitsigns]

+ +

Type: +null or string

+ +

Default: +"<leader>tb"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/gitsigns/gitsigns.nix> + +
+
+
+ + vim.git.gitsigns.mappings.toggleDeleted + + +
+
+

Toggle deleted [Gitsigns]

+ +

Type: +null or string

+ +

Default: +"<leader>td"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/gitsigns/gitsigns.nix> + +
+
+
+ + vim.git.gitsigns.mappings.undoStageHunk + + +
+
+

Undo stage hunk [Gitsigns]

+ +

Type: +null or string

+ +

Default: +"<leader>hu"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/gitsigns/gitsigns.nix> + +
+
+
+ + vim.git.vim-fugitive.enable + + +
+
+

Whether to enable vim-fugitive.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/git/vim-fugitive/vim-fugitive.nix> + +
+
+
+ + vim.globals + + +
+
+

An attribute set containing global variable values +for storing vim variables as early as possible. If +populated, this option will set vim variables in the +built luaConfigRC as the first item.

Note

{foo = "bar";} will set vim.g.foo to “bar”, where +the type of bar in the resulting Lua value will be +inferred from the type of the value in the {name = value;} +pair passed to the option.

+ +

Type: +attribute set of anything

+ +

Default: +{ }

+ +

Example:

{
+  some_variable = 42;
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.globals.mapleader + + +
+
+

The key used for <leader> mappings

+ +

Type: +string

+ +

Default: +" "

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.globals.maplocalleader + + +
+
+

The key used for <localleader> mappings

+ +

Type: +string

+ +

Default: +","

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.hideSearchHighlight + + +
+
+

Hide search highlight so it doesn’t stay highlighted

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/basic.nix> + +
+
+
+ + vim.keymaps + + +
+
+

Custom keybindings.

+ +

Type: +list of (submodule)

+ +

Default: +{ }

+ +

Example:

''
+  vim.keymaps = [
+    {
+      key = "<leader>m";
+      mode = "n";
+      silent = true;
+      action = ":make<CR>";
+    }
+    {
+      key = "<leader>l";
+      mode = ["n" "x"];
+      silent = true;
+      action = "<cmd>cnext<CR>";
+    }
+  ];
+''
+
+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.keymaps.*.action + + +
+
+

The command to execute.

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.keymaps.*.desc + + +
+
+

A description of this keybind, to be shown in which-key, if you have it enabled.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.keymaps.*.expr + + +
+
+

Means that the action is actually an expression. Equivalent to adding <expr> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.keymaps.*.key + + +
+
+

The key that triggers this keybind.

+ +

Type: +null or string

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.keymaps.*.lua + + +
+
+

If true, action is considered to be lua code. +Thus, it will not be wrapped in "".

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.keymaps.*.mode + + +
+
+

The short-name of the mode to set the keymapping for. Passing an empty string is the equivalent of :map.

See :help map-modes for a list of modes.

+ +

Type: +string or list of string

+ +

Example: +["n" "v" "c"] for normal, visual and command mode

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.keymaps.*.noremap + + +
+
+

Whether to use the ‘noremap’ variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.keymaps.*.nowait + + +
+
+

Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.keymaps.*.script + + +
+
+

Equivalent to adding <script> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.keymaps.*.silent + + +
+
+

Whether this mapping should be silent. Equivalent to adding <silent> to a map.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.keymaps.*.unique + + +
+
+

Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.languages.enableDAP + + +
+
+

Turn on Debug Adapter for enabled languages by default

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages> + +
+
+
+ + vim.languages.enableExtraDiagnostics + + +
+
+

Turn on extra diagnostics for enabled languages by default

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages> + +
+
+
+ + vim.languages.enableFormat + + +
+
+

Turn on Formatting for enabled languages by default

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages> + +
+
+
+ + vim.languages.enableLSP + + +
+
+

Turn on LSP for enabled languages by default

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages> + +
+
+
+ + vim.languages.enableTreesitter + + +
+
+

Turn on Treesitter for enabled languages by default

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages> + +
+
+
+ + vim.languages.assembly.enable + + +
+
+

Whether to enable Assembly support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/asm.nix> + +
+
+
+ + vim.languages.assembly.lsp.enable + + +
+
+

Whether to enable Assembly LSP support (asm-lsp).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/asm.nix> + +
+
+
+ + vim.languages.assembly.lsp.package + + +
+
+

asm-lsp package

+ +

Type: +package

+ +

Default: +<derivation asm-lsp-0.9.0>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/asm.nix> + +
+
+
+ + vim.languages.assembly.treesitter.enable + + +
+
+

Whether to enable Assembly treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/asm.nix> + +
+
+
+ + vim.languages.assembly.treesitter.package + + +
+
+

The asm treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.asm

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/asm.nix> + +
+
+
+ + vim.languages.astro.enable + + +
+
+

Whether to enable Astro language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/astro.nix> + +
+
+
+ + vim.languages.astro.extraDiagnostics.enable + + +
+
+

Whether to enable extra Astro diagnostics.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/astro.nix> + +
+
+
+ + vim.languages.astro.extraDiagnostics.types + + +
+
+

List of Astro diagnostics to enable

+ +

Type: +list of (value “eslint_d” (singular enum) or (submodule))

+ +

Default:

[
+  "eslint_d"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/astro.nix> + +
+
+
+ + vim.languages.astro.format.enable + + +
+
+

Whether to enable Astro formatting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/astro.nix> + +
+
+
+ + vim.languages.astro.format.package + + +
+
+

Astro formatter package

+ +

Type: +package

+ +

Default: +<derivation prettier-3.3.3>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/astro.nix> + +
+
+
+ + vim.languages.astro.format.type + + +
+
+

Astro formatter to use

+ +

Type: +one of “biome”, “prettier”

+ +

Default: +"prettier"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/astro.nix> + +
+
+
+ + vim.languages.astro.lsp.enable + + +
+
+

Whether to enable Astro LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/astro.nix> + +
+
+
+ + vim.languages.astro.lsp.package + + +
+
+

Astro LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation astro-language-server-2.15.4>

+ +

Example: +"[lib.getExe pkgs.astro-language-server \"--minify\" \"--stdio\"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/astro.nix> + +
+
+
+ + vim.languages.astro.lsp.server + + +
+
+

Astro LSP server to use

+ +

Type: +value “astro” (singular enum)

+ +

Default: +"astro"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/astro.nix> + +
+
+
+ + vim.languages.astro.treesitter.enable + + +
+
+

Whether to enable Astro treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/astro.nix> + +
+
+
+ + vim.languages.astro.treesitter.astroPackage + + +
+
+

The astro treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.astro

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/astro.nix> + +
+
+
+ + vim.languages.bash.enable + + +
+
+

Whether to enable Bash language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/bash.nix> + +
+
+
+ + vim.languages.bash.extraDiagnostics.enable + + +
+
+

Whether to enable extra Bash diagnostics.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/bash.nix> + +
+
+
+ + vim.languages.bash.extraDiagnostics.types + + +
+
+

List of Bash diagnostics to enable

+ +

Type: +list of (value “shellcheck” (singular enum) or (submodule))

+ +

Default:

[
+  "shellcheck"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/bash.nix> + +
+
+
+ + vim.languages.bash.format.enable + + +
+
+

Enable Bash formatting

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/bash.nix> + +
+
+
+ + vim.languages.bash.format.package + + +
+
+

Bash formatter package

+ +

Type: +package

+ +

Default: +<derivation shfmt-3.10.0>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/bash.nix> + +
+
+
+ + vim.languages.bash.format.type + + +
+
+

Bash formatter to use

+ +

Type: +value “shfmt” (singular enum)

+ +

Default: +"shfmt"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/bash.nix> + +
+
+
+ + vim.languages.bash.lsp.enable + + +
+
+

Whether to enable Enable Bash LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/bash.nix> + +
+
+
+ + vim.languages.bash.lsp.package + + +
+
+

bash-language-server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation bash-language-server-5.4.0>

+ +

Example: +[lib.getExe pkgs.nodePackages.bash-language-server "start"]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/bash.nix> + +
+
+
+ + vim.languages.bash.lsp.server + + +
+
+

Bash LSP server to use

+ +

Type: +value “bash-ls” (singular enum)

+ +

Default: +"bash-ls"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/bash.nix> + +
+
+
+ + vim.languages.bash.treesitter.enable + + +
+
+

Whether to enable Bash treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/bash.nix> + +
+
+
+ + vim.languages.bash.treesitter.package + + +
+
+

The bash treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.bash

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/bash.nix> + +
+
+
+ + vim.languages.clang.enable + + +
+
+

Whether to enable C/C++ language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/clang.nix> + +
+
+
+ + vim.languages.clang.cHeader + + +
+
+

C syntax for headers. Can fix treesitter errors, see: +https://www.reddit.com/r/neovim/comments/orfpcd/question_does_the_c_parser_from_nvimtreesitter/

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/clang.nix> + +
+
+
+ + vim.languages.clang.dap.enable + + +
+
+

Enable clang Debug Adapter

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/clang.nix> + +
+
+
+ + vim.languages.clang.dap.package + + +
+
+

clang debugger package.

+ +

Type: +package

+ +

Default: +<derivation lldb-18.1.8>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/clang.nix> + +
+
+
+ + vim.languages.clang.dap.debugger + + +
+
+

clang debugger to use

+ +

Type: +value “lldb-vscode” (singular enum)

+ +

Default: +"lldb-vscode"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/clang.nix> + +
+
+
+ + vim.languages.clang.lsp.enable + + +
+
+

Whether to enable clang LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/clang.nix> + +
+
+
+ + vim.languages.clang.lsp.package + + +
+
+

clang LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation clang-tools-18.1.8>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \" - data \" \" ~/.cache/jdtls/workspace \"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/clang.nix> + +
+
+
+ + vim.languages.clang.lsp.opts + + +
+
+

Options to pass to clang LSP server

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/clang.nix> + +
+
+
+ + vim.languages.clang.lsp.server + + +
+
+

The clang LSP server to use

+ +

Type: +one of “ccls”, “clangd”

+ +

Default: +"clangd"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/clang.nix> + +
+
+
+ + vim.languages.clang.treesitter.enable + + +
+
+

Whether to enable C/C++ treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/clang.nix> + +
+
+
+ + vim.languages.clang.treesitter.cPackage + + +
+
+

The c treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.c

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/clang.nix> + +
+
+
+ + vim.languages.clang.treesitter.cppPackage + + +
+
+

The cpp treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.cpp

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/clang.nix> + +
+
+
+ + vim.languages.csharp.enable + + +
+
+

Whether to enable C# language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/csharp.nix> + +
+
+
+ + vim.languages.csharp.lsp.enable + + +
+
+

Whether to enable C# LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/csharp.nix> + +
+
+
+ + vim.languages.csharp.lsp.package + + +
+
+

C# LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation csharp-ls-0.15.0>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/csharp.nix> + +
+
+
+ + vim.languages.csharp.lsp.server + + +
+
+

C# LSP server to use

+ +

Type: +one of “csharp_ls”, “omnisharp”

+ +

Default: +"csharp_ls"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/csharp.nix> + +
+
+
+ + vim.languages.csharp.treesitter.enable + + +
+
+

Whether to enable C# treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/csharp.nix> + +
+
+
+ + vim.languages.csharp.treesitter.package + + +
+
+

The c-sharp treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.c-sharp

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/csharp.nix> + +
+
+
+ + vim.languages.css.enable + + +
+
+

Whether to enable CSS language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/css.nix> + +
+
+
+ + vim.languages.css.format.enable + + +
+
+

Whether to enable CSS formatting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/css.nix> + +
+
+
+ + vim.languages.css.format.package + + +
+
+

CSS formatter package

+ +

Type: +package

+ +

Default: +<derivation prettier-3.3.3>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/css.nix> + +
+
+
+ + vim.languages.css.format.type + + +
+
+

CSS formatter to use

+ +

Type: +one of “biome”, “prettier”, “prettierd”

+ +

Default: +"prettier"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/css.nix> + +
+
+
+ + vim.languages.css.lsp.enable + + +
+
+

Whether to enable CSS LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/css.nix> + +
+
+
+ + vim.languages.css.lsp.package + + +
+
+

CSS LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation vscode-langservers-extracted-4.10.0>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \" - data \" \" ~/.cache/jdtls/workspace \"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/css.nix> + +
+
+
+ + vim.languages.css.lsp.server + + +
+
+

CSS LSP server to use

+ +

Type: +value “vscode-langservers-extracted” (singular enum)

+ +

Default: +"vscode-langservers-extracted"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/css.nix> + +
+
+
+ + vim.languages.css.treesitter.enable + + +
+
+

Whether to enable CSS treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/css.nix> + +
+
+
+ + vim.languages.css.treesitter.package + + +
+
+

The css treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.css

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/css.nix> + +
+
+
+ + vim.languages.dart.enable + + +
+
+

Whether to enable Dart language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/dart.nix> + +
+
+
+ + vim.languages.dart.dap.enable + + +
+
+

Enable Dart DAP support via flutter-tools

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/dart.nix> + +
+
+
+ + vim.languages.dart.flutter-tools.enable + + +
+
+

Enable flutter-tools for flutter support

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/dart.nix> + +
+
+
+ + vim.languages.dart.flutter-tools.enableNoResolvePatch + + +
+
+

Whether to patch flutter-tools so that it doesn’t resolve +symlinks when detecting flutter path.

This is required if you want to use a flutter package built with nix. +If you are using a flutter SDK installed from a different source +and encounter the error “dart missing from PATH”, disable this option.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/dart.nix> + +
+
+
+ + vim.languages.dart.flutter-tools.color.enable + + +
+
+

Whether to enable highlighting color variables.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/dart.nix> + +
+
+
+ + vim.languages.dart.flutter-tools.color.highlightBackground + + +
+
+

Highlight the background

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/dart.nix> + +
+
+
+ + vim.languages.dart.flutter-tools.color.highlightForeground + + +
+
+

Highlight the foreground

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/dart.nix> + +
+
+
+ + vim.languages.dart.flutter-tools.color.virtualText.enable + + +
+
+

Whether to enable Show the highlight using virtual text.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/dart.nix> + +
+
+
+ + vim.languages.dart.flutter-tools.color.virtualText.character + + +
+
+

Virtual text character to highlight

+ +

Type: +string

+ +

Default: +"■"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/dart.nix> + +
+
+
+ + vim.languages.dart.lsp.enable + + +
+
+

Whether to enable Dart LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/dart.nix> + +
+
+
+ + vim.languages.dart.lsp.package + + +
+
+

Dart LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation dart-3.5.4>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \"-data\" \"~/.cache/jdtls/workspace\"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/dart.nix> + +
+
+
+ + vim.languages.dart.lsp.opts + + +
+
+

Options to pass to Dart LSP server

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/dart.nix> + +
+
+
+ + vim.languages.dart.lsp.server + + +
+
+

The Dart LSP server to use

+ +

Type: +value “dart” (singular enum)

+ +

Default: +"dart"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/dart.nix> + +
+
+
+ + vim.languages.dart.treesitter.enable + + +
+
+

Whether to enable Dart treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/dart.nix> + +
+
+
+ + vim.languages.dart.treesitter.package + + +
+
+

The dart treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.dart

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/dart.nix> + +
+
+
+ + vim.languages.elixir.enable + + +
+
+

Whether to enable Elixir language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/elixir.nix> + +
+
+
+ + vim.languages.elixir.elixir-tools.enable + + +
+
+

Whether to enable Elixir tools.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/elixir.nix> + +
+
+
+ + vim.languages.elixir.format.enable + + +
+
+

Whether to enable Elixir formatting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/elixir.nix> + +
+
+
+ + vim.languages.elixir.format.package + + +
+
+

Elixir formatter package

+ +

Type: +package

+ +

Default: +<derivation elixir-1.17.3>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/elixir.nix> + +
+
+
+ + vim.languages.elixir.format.type + + +
+
+

Elixir formatter to use

+ +

Type: +value “mix” (singular enum)

+ +

Default: +"mix"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/elixir.nix> + +
+
+
+ + vim.languages.elixir.lsp.enable + + +
+
+

Whether to enable Elixir LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/elixir.nix> + +
+
+
+ + vim.languages.elixir.lsp.package + + +
+
+

Elixir LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation elixir-ls-0.24.1>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \" - data \" \" ~/.cache/jdtls/workspace \"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/elixir.nix> + +
+
+
+ + vim.languages.elixir.lsp.server + + +
+
+

Elixir LSP server to use

+ +

Type: +value “elixirls” (singular enum)

+ +

Default: +"elixirls"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/elixir.nix> + +
+
+
+ + vim.languages.elixir.treesitter.enable + + +
+
+

Whether to enable Elixir treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/elixir.nix> + +
+
+
+ + vim.languages.elixir.treesitter.package + + +
+
+

The elixir treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.elixir

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/elixir.nix> + +
+
+
+ + vim.languages.gleam.enable + + +
+
+

Whether to enable Gleam language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/gleam.nix> + +
+
+
+ + vim.languages.gleam.lsp.enable + + +
+
+

Whether to enable Gleam LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/gleam.nix> + +
+
+
+ + vim.languages.gleam.lsp.package + + +
+
+

Gleam LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation gleam-1.6.2>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/gleam.nix> + +
+
+
+ + vim.languages.gleam.lsp.server + + +
+
+

Gleam LSP server to use

+ +

Type: +value “gleam” (singular enum)

+ +

Default: +"gleam"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/gleam.nix> + +
+
+
+ + vim.languages.gleam.treesitter.enable + + +
+
+

Whether to enable Gleam treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/gleam.nix> + +
+
+
+ + vim.languages.gleam.treesitter.package + + +
+
+

The gleam treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.gleam

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/gleam.nix> + +
+
+
+ + vim.languages.go.enable + + +
+
+

Whether to enable Go language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/go.nix> + +
+
+
+ + vim.languages.go.dap.enable + + +
+
+

Enable Go Debug Adapter via nvim-dap-go plugin

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/go.nix> + +
+
+
+ + vim.languages.go.dap.package + + +
+
+

Go debugger package.

+ +

Type: +package

+ +

Default: +<derivation delve-1.23.1>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/go.nix> + +
+
+
+ + vim.languages.go.dap.debugger + + +
+
+

Go debugger to use

+ +

Type: +value “delve” (singular enum)

+ +

Default: +"delve"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/go.nix> + +
+
+
+ + vim.languages.go.lsp.enable + + +
+
+

Whether to enable Go LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/go.nix> + +
+
+
+ + vim.languages.go.lsp.package + + +
+
+

Go LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation gopls-0.16.2>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \" - data \" \" ~/.cache/jdtls/workspace \"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/go.nix> + +
+
+
+ + vim.languages.go.lsp.server + + +
+
+

Go LSP server to use

+ +

Type: +value “gopls” (singular enum)

+ +

Default: +"gopls"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/go.nix> + +
+
+
+ + vim.languages.go.treesitter.enable + + +
+
+

Whether to enable Go treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/go.nix> + +
+
+
+ + vim.languages.go.treesitter.package + + +
+
+

The go treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.go

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/go.nix> + +
+
+
+ + vim.languages.hcl.enable + + +
+
+

Whether to enable HCL support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/hcl.nix> + +
+
+
+ + vim.languages.hcl.format.enable + + +
+
+

Enable HCL formatting

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/hcl.nix> + +
+
+
+ + vim.languages.hcl.format.package + + +
+
+

HCL formatter package

+ +

Type: +package

+ +

Default: +<derivation hclfmt-2.23.0>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/hcl.nix> + +
+
+
+ + vim.languages.hcl.format.type + + +
+
+

HCL formatter to use

+ +

Type: +value “hclfmt” (singular enum)

+ +

Default: +"hclfmt"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/hcl.nix> + +
+
+
+ + vim.languages.hcl.lsp.enable + + +
+
+

Whether to enable HCL LSP support (terraform-ls).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/hcl.nix> + +
+
+
+ + vim.languages.hcl.lsp.package + + +
+
+

HCL language server package (terraform-ls)

+ +

Type: +package

+ +

Default: +<derivation terraform-ls-0.34.3>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/hcl.nix> + +
+
+
+ + vim.languages.hcl.treesitter.enable + + +
+
+

Whether to enable HCL treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/hcl.nix> + +
+
+
+ + vim.languages.hcl.treesitter.package + + +
+
+

The hcl treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.hcl

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/hcl.nix> + +
+
+
+ + vim.languages.html.enable + + +
+
+

Whether to enable HTML language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/html.nix> + +
+
+
+ + vim.languages.html.treesitter.enable + + +
+
+

Whether to enable HTML treesitter support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/html.nix> + +
+
+
+ + vim.languages.html.treesitter.package + + +
+
+

The html treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.html

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/html.nix> + +
+
+
+ + vim.languages.html.treesitter.autotagHtml + + +
+
+

Enable autoclose/autorename of html tags (nvim-ts-autotag)

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/html.nix> + +
+
+
+ + vim.languages.java.enable + + +
+
+

Whether to enable Java language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/java.nix> + +
+
+
+ + vim.languages.java.lsp.enable + + +
+
+

Whether to enable Java LSP support (java-language-server).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/java.nix> + +
+
+
+ + vim.languages.java.lsp.package + + +
+
+

java language server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation jdt-language-server-1.40.0>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \"-data\" \"~/.cache/jdtls/workspace\"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/java.nix> + +
+
+
+ + vim.languages.java.treesitter.enable + + +
+
+

Whether to enable Java treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/java.nix> + +
+
+
+ + vim.languages.java.treesitter.package + + +
+
+

The java treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.java

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/java.nix> + +
+
+
+ + vim.languages.julia.enable + + +
+
+

Whether to enable Julia language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/julia.nix> + +
+
+
+ + vim.languages.julia.lsp.enable + + +
+
+

Whether to enable Julia LSP support.

Note

The entirety of Julia is bundled with nvf, if you enable this +option, since there is no way to provide only the LSP server.

If you want to avoid that, you have to change +vim.languages.julia.lsp.package to use the Julia binary +in PATH (set it to null), and add the LanguageServer package to +Julia in your devshells.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/julia.nix> + +
+
+
+ + vim.languages.julia.lsp.package + + +
+
+

Julia LSP server package, null to use the Julia binary in PATH, or +the command to run as a list of strings.

+ +

Type: +null or package or list of string

+ +

Default: +<derivation julia-1.11.1-env>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/julia.nix> + +
+
+
+ + vim.languages.julia.lsp.server + + +
+
+

Julia LSP server to use

+ +

Type: +value “julials” (singular enum)

+ +

Default: +"julials"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/julia.nix> + +
+
+
+ + vim.languages.julia.treesitter.enable + + +
+
+

Whether to enable Julia treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/julia.nix> + +
+
+
+ + vim.languages.julia.treesitter.package + + +
+
+

The julia treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.julia

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/julia.nix> + +
+
+
+ + vim.languages.kotlin.enable + + +
+
+

Whether to enable Kotlin/HCL support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/kotlin.nix> + +
+
+
+ + vim.languages.kotlin.extraDiagnostics.enable + + +
+
+

Whether to enable extra Kotlin diagnostics.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/kotlin.nix> + +
+
+
+ + vim.languages.kotlin.extraDiagnostics.types + + +
+
+

List of Kotlin diagnostics to enable

+ +

Type: +list of (value “ktlint” (singular enum) or (submodule))

+ +

Default:

[
+  "ktlint"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/kotlin.nix> + +
+
+
+ + vim.languages.kotlin.lsp.enable + + +
+
+

Whether to enable Kotlin LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/kotlin.nix> + +
+
+
+ + vim.languages.kotlin.lsp.package + + +
+
+

kotlin_language_server package with Kotlin runtime

+ +

Type: +package or list of string

+ +

Default: +<derivation kotlin-language-server-1.3.12>

+ +

Example:

pkgs.symlinkJoin {
+  name = "kotlin-language-server-wrapped";
+  paths = [pkgs.kotlin-language-server];
+  nativeBuildInputs = [pkgs.makeBinaryWrapper];
+  postBuild = ''
+    wrapProgram $out/bin/kotlin-language-server \
+      --prefix PATH : ${pkgs.kotlin}/bin
+  '';
+};
+
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/kotlin.nix> + +
+
+
+ + vim.languages.kotlin.treesitter.enable + + +
+
+

Whether to enable Kotlin treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/kotlin.nix> + +
+
+
+ + vim.languages.kotlin.treesitter.package + + +
+
+

The kotlin treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.kotlin

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/kotlin.nix> + +
+
+
+ + vim.languages.lua.enable + + +
+
+

Whether to enable Lua language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/lua.nix> + +
+
+
+ + vim.languages.lua.lsp.enable + + +
+
+

Whether to enable Lua LSP support via LuaLS.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/lua.nix> + +
+
+
+ + vim.languages.lua.lsp.package + + +
+
+

LuaLS package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation lua-language-server-3.13.2>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/lua.nix> + +
+
+
+ + vim.languages.lua.lsp.neodev.enable + + +
+
+

Whether to enable neodev.nvim integration, useful for neovim plugin developers.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/lua.nix> + +
+
+
+ + vim.languages.lua.treesitter.enable + + +
+
+

Whether to enable Lua Treesitter support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/lua.nix> + +
+
+
+ + vim.languages.lua.treesitter.package + + +
+
+

The lua treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.lua

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/lua.nix> + +
+
+
+ + vim.languages.markdown.enable + + +
+
+

Whether to enable Markdown markup language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/markdown.nix> + +
+
+
+ + vim.languages.markdown.format.enable + + +
+
+

Whether to enable Markdown formatting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/markdown.nix> + +
+
+
+ + vim.languages.markdown.format.package + + +
+
+

Markdown formatter package

+ +

Type: +package

+ +

Default: +<derivation deno-2.1.1>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/markdown.nix> + +
+
+
+ + vim.languages.markdown.format.extraFiletypes + + +
+
+

Extra filetypes to format with the Markdown formatter

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/markdown.nix> + +
+
+
+ + vim.languages.markdown.format.type + + +
+
+

Markdown formatter to use

+ +

Type: +value “denofmt” (singular enum)

+ +

Default: +"denofmt"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/markdown.nix> + +
+
+
+ + vim.languages.markdown.lsp.enable + + +
+
+

Whether to enable Enable Markdown LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/markdown.nix> + +
+
+
+ + vim.languages.markdown.lsp.package + + +
+
+

Markdown LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation marksman-2024-11-20>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \" - data \" \" ~/.cache/jdtls/workspace \"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/markdown.nix> + +
+
+
+ + vim.languages.markdown.lsp.server + + +
+
+

Markdown LSP server to use

+ +

Type: +value “marksman” (singular enum)

+ +

Default: +"marksman"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/markdown.nix> + +
+
+
+ + vim.languages.markdown.treesitter.enable + + +
+
+

Enable Markdown treesitter

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/markdown.nix> + +
+
+
+ + vim.languages.markdown.treesitter.mdInlinePackage + + +
+
+

The markdown-inline treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.markdown-inline

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/markdown.nix> + +
+
+
+ + vim.languages.markdown.treesitter.mdPackage + + +
+
+

The markdown treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.markdown

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/markdown.nix> + +
+
+
+ + vim.languages.nim.enable + + +
+
+

Whether to enable Nim language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nim.nix> + +
+
+
+ + vim.languages.nim.format.enable + + +
+
+

Whether to enable Nim formatting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nim.nix> + +
+
+
+ + vim.languages.nim.format.package + + +
+
+

Nim formatter package

+ +

Type: +package

+ +

Default: +<derivation x86_64-unknown-linux-gnu-nim-wrapper-2.2.0>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nim.nix> + +
+
+
+ + vim.languages.nim.format.type + + +
+
+

Nim formatter to use

+ +

Type: +value “nimpretty” (singular enum)

+ +

Default: +"nimpretty"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nim.nix> + +
+
+
+ + vim.languages.nim.lsp.enable + + +
+
+

Whether to enable Nim LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nim.nix> + +
+
+
+ + vim.languages.nim.lsp.package + + +
+
+

Nim LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation nimlsp-0.4.6>

+ +

Example: +"[lib.getExe pkgs.nimlsp]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nim.nix> + +
+
+
+ + vim.languages.nim.lsp.server + + +
+
+

Nim LSP server to use

+ +

Type: +string

+ +

Default: +"nimlsp"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nim.nix> + +
+
+
+ + vim.languages.nim.treesitter.enable + + +
+
+

Whether to enable Nim treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nim.nix> + +
+
+
+ + vim.languages.nim.treesitter.package + + +
+
+

The nim treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.nim

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nim.nix> + +
+
+
+ + vim.languages.nix.enable + + +
+
+

Whether to enable Nix language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nix.nix> + +
+
+
+ + vim.languages.nix.extraDiagnostics.enable + + +
+
+

Whether to enable extra Nix diagnostics.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nix.nix> + +
+
+
+ + vim.languages.nix.extraDiagnostics.types + + +
+
+

List of Nix diagnostics to enable

+ +

Type: +list of (one of “deadnix”, “statix” or (submodule))

+ +

Default:

[
+  "statix"
+  "deadnix"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nix.nix> + +
+
+
+ + vim.languages.nix.format.enable + + +
+
+

Whether to enable Nix formatting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nix.nix> + +
+
+
+ + vim.languages.nix.format.package + + +
+
+

Nix formatter package

+ +

Type: +package

+ +

Default: +<derivation alejandra-3.1.0>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nix.nix> + +
+
+
+ + vim.languages.nix.format.type + + +
+
+

Nix formatter to use

+ +

Type: +one of “alejandra”, “nixfmt”, “nixpkgs-fmt”

+ +

Default: +"alejandra"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nix.nix> + +
+
+
+ + vim.languages.nix.lsp.enable + + +
+
+

Whether to enable Nix LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nix.nix> + +
+
+
+ + vim.languages.nix.lsp.package + + +
+
+

Nix LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation nil-2024-08-06>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \"-data\" \"~/.cache/jdtls/workspace\"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nix.nix> + +
+
+
+ + vim.languages.nix.lsp.server + + +
+
+

Nix LSP server to use

+ +

Type: +one of “nil”, “rnix”

+ +

Default: +"nil"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nix.nix> + +
+
+
+ + vim.languages.nix.treesitter.enable + + +
+
+

Whether to enable Nix treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nix.nix> + +
+
+
+ + vim.languages.nix.treesitter.package + + +
+
+

The nix treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.nix

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nix.nix> + +
+
+
+ + vim.languages.nu.enable + + +
+
+

Whether to enable Nu language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nu.nix> + +
+
+
+ + vim.languages.nu.lsp.enable + + +
+
+

Whether to enable Nu LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nu.nix> + +
+
+
+ + vim.languages.nu.lsp.package + + +
+
+

Nu LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation nushell-0.100.0>

+ +

Example: +"[(lib.getExe pkgs.nushell) \"--lsp\"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nu.nix> + +
+
+
+ + vim.languages.nu.lsp.server + + +
+
+

Nu LSP server to use

+ +

Type: +string

+ +

Default: +"nushell"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nu.nix> + +
+
+
+ + vim.languages.nu.treesitter.enable + + +
+
+

Whether to enable Nu treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nu.nix> + +
+
+
+ + vim.languages.nu.treesitter.package + + +
+
+

The nu treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.nu

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/nu.nix> + +
+
+
+ + vim.languages.ocaml.enable + + +
+
+

Whether to enable OCaml language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ocaml.nix> + +
+
+
+ + vim.languages.ocaml.format.enable + + +
+
+

Whether to enable OCaml formatting support (ocamlformat).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ocaml.nix> + +
+
+
+ + vim.languages.ocaml.format.package + + +
+
+

OCaml formatter package

+ +

Type: +package

+ +

Default: +<derivation ocaml5.2.0-ocamlformat-0.26.2>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ocaml.nix> + +
+
+
+ + vim.languages.ocaml.format.type + + +
+
+

OCaml formatter to use

+ +

Type: +value “ocamlformat” (singular enum)

+ +

Default: +"ocamlformat"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ocaml.nix> + +
+
+
+ + vim.languages.ocaml.lsp.enable + + +
+
+

Whether to enable OCaml LSP support (ocaml-lsp).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ocaml.nix> + +
+
+
+ + vim.languages.ocaml.lsp.package + + +
+
+

OCaml language server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation ocaml5.2.0-ocaml-lsp-server-1.19.0>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ocaml.nix> + +
+
+
+ + vim.languages.ocaml.lsp.server + + +
+
+

OCaml LSP server to user

+ +

Type: +value “ocaml-lsp” (singular enum)

+ +

Default: +"ocaml-lsp"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ocaml.nix> + +
+
+
+ + vim.languages.ocaml.treesitter.enable + + +
+
+

Whether to enable OCaml treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ocaml.nix> + +
+
+
+ + vim.languages.ocaml.treesitter.package + + +
+
+

The ocaml treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.ocaml

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ocaml.nix> + +
+
+
+ + vim.languages.php.enable + + +
+
+

Whether to enable PHP language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/php.nix> + +
+
+
+ + vim.languages.php.lsp.enable + + +
+
+

Whether to enable PHP LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/php.nix> + +
+
+
+ + vim.languages.php.lsp.package + + +
+
+

PHP LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation phpactor-2024.11.28.0>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \" - data \" \" ~/.cache/jdtls/workspace \"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/php.nix> + +
+
+
+ + vim.languages.php.lsp.server + + +
+
+

PHP LSP server to use

+ +

Type: +one of “phan”, “phpactor”

+ +

Default: +"phpactor"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/php.nix> + +
+
+
+ + vim.languages.php.treesitter.enable + + +
+
+

Whether to enable PHP treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/php.nix> + +
+
+
+ + vim.languages.php.treesitter.package + + +
+
+

The php treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.php

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/php.nix> + +
+
+
+ + vim.languages.python.enable + + +
+
+

Whether to enable Python language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/python.nix> + +
+
+
+ + vim.languages.python.dap.enable + + +
+
+

Enable Python Debug Adapter

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/python.nix> + +
+
+
+ + vim.languages.python.dap.package + + +
+
+

Python debugger package. +This is a python package with debugpy installed, see https://nixos.wiki/wiki/Python#Install_Python_Packages.

+ +

Type: +package

+ +

Default: +<derivation python3-3.12.7-env>

+ +

Example: +with pkgs; python39.withPackages (ps: with ps; [debugpy])

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/python.nix> + +
+
+
+ + vim.languages.python.dap.debugger + + +
+
+

Python debugger to use

+ +

Type: +value “debugpy” (singular enum)

+ +

Default: +"debugpy"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/python.nix> + +
+
+
+ + vim.languages.python.format.enable + + +
+
+

Whether to enable Python formatting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/python.nix> + +
+
+
+ + vim.languages.python.format.package + + +
+
+

Python formatter package

+ +

Type: +package

+ +

Default: +<derivation black-24.8.0>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/python.nix> + +
+
+
+ + vim.languages.python.format.type + + +
+
+

Python formatter to use

+ +

Type: +one of “black”, “black-and-isort”, “isort”

+ +

Default: +"black"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/python.nix> + +
+
+
+ + vim.languages.python.lsp.enable + + +
+
+

Whether to enable Python LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/python.nix> + +
+
+
+ + vim.languages.python.lsp.package + + +
+
+

python LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation basedpyright-1.22.0>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \"-data\" \"~/.cache/jdtls/workspace\"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/python.nix> + +
+
+
+ + vim.languages.python.lsp.server + + +
+
+

Python LSP server to use

+ +

Type: +one of “basedpyright”, “pyright”, “python-lsp-server”

+ +

Default: +"basedpyright"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/python.nix> + +
+
+
+ + vim.languages.python.treesitter.enable + + +
+
+

Whether to enable Python treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/python.nix> + +
+
+
+ + vim.languages.python.treesitter.package + + +
+
+

Python treesitter grammar to use

+ +

Type: +package

+ +

Default: +<derivation python-grammar-0.0.0+rev=6d14e44>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/python.nix> + +
+
+
+ + vim.languages.r.enable + + +
+
+

Whether to enable R language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/r.nix> + +
+
+
+ + vim.languages.r.format.enable + + +
+
+

Whether to enable R formatting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/r.nix> + +
+
+
+ + vim.languages.r.format.package + + +
+
+

R formatter package

+ +

Type: +package

+ +

Default: +<derivation R-4.4.1-wrapper>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/r.nix> + +
+
+
+ + vim.languages.r.format.type + + +
+
+

R formatter to use

+ +

Type: +one of “format_r”, “styler”

+ +

Default: +"format_r"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/r.nix> + +
+
+
+ + vim.languages.r.lsp.enable + + +
+
+

Whether to enable R LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/r.nix> + +
+
+
+ + vim.languages.r.lsp.package + + +
+
+

R LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation r_lsp>

+ +

Example: +[ (lib.getExe pkgs.jdt-language-server) "-data" "~/.cache/jdtls/workspace" ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/r.nix> + +
+
+
+ + vim.languages.r.lsp.server + + +
+
+

R LSP server to use

+ +

Type: +value “r_language_server” (singular enum)

+ +

Default: +"r_language_server"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/r.nix> + +
+
+
+ + vim.languages.r.treesitter.enable + + +
+
+

Whether to enable R treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/r.nix> + +
+
+
+ + vim.languages.r.treesitter.package + + +
+
+

The r treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.r

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/r.nix> + +
+
+
+ + vim.languages.rust.enable + + +
+
+

Whether to enable Rust language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/rust.nix> + +
+
+
+ + vim.languages.rust.crates.enable + + +
+
+

Whether to enable crates-nvim, tools for managing dependencies.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/rust.nix> + +
+
+
+ + vim.languages.rust.crates.codeActions + + +
+
+

Enable code actions through null-ls

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/rust.nix> + +
+
+
+ + vim.languages.rust.dap.enable + + +
+
+

Rust Debug Adapter support

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/rust.nix> + +
+
+
+ + vim.languages.rust.dap.package + + +
+
+

lldb package

+ +

Type: +package

+ +

Default: +<derivation lldb-18.1.8>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/rust.nix> + +
+
+
+ + vim.languages.rust.format.enable + + +
+
+

Whether to enable Rust formatting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/rust.nix> + +
+
+
+ + vim.languages.rust.format.package + + +
+
+

Rust formatter package

+ +

Type: +package

+ +

Default: +<derivation rustfmt-1.82.0>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/rust.nix> + +
+
+
+ + vim.languages.rust.format.type + + +
+
+

Rust formatter to use

+ +

Type: +value “rustfmt” (singular enum)

+ +

Default: +"rustfmt"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/rust.nix> + +
+
+
+ + vim.languages.rust.lsp.enable + + +
+
+

Whether to enable Rust LSP support (rust-analyzer with extra tools).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/rust.nix> + +
+
+
+ + vim.languages.rust.lsp.package + + +
+
+

rust-analyzer package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation rust-analyzer-2024-11-11>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \"-data\" \"~/.cache/jdtls/workspace\"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/rust.nix> + +
+
+
+ + vim.languages.rust.lsp.opts + + +
+
+

Options to pass to rust analyzer

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/rust.nix> + +
+
+
+ + vim.languages.rust.treesitter.enable + + +
+
+

Whether to enable Rust treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/rust.nix> + +
+
+
+ + vim.languages.rust.treesitter.package + + +
+
+

The rust treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.rust

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/rust.nix> + +
+
+
+ + vim.languages.scala.enable + + +
+
+

Whether to enable Scala language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/scala.nix> + +
+
+
+ + vim.languages.scala.dap.enable + + +
+
+

Whether to enable Scala Debug Adapter support (metals).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/scala.nix> + +
+
+
+ + vim.languages.scala.dap.config + + +
+
+

Lua configuration for dap

+ +

Type: +luaInline

+ +

Default:

{
+  _type = "lua-inline";
+  expr = ''
+    dap.configurations.scala = {
+      {
+        type = "scala",
+        request = "launch",
+        name = "RunOrTest",
+        metals = {
+          runType = "runOrTestFile",
+          --args = { "firstArg", "secondArg", "thirdArg" }, -- here just as an example
+        },
+      },
+      {
+        type = "scala",
+        request = "launch",
+        name = "Test Target",
+        metals = {
+          runType = "testTarget",
+        },
+      },
+    }
+  '';
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/scala.nix> + +
+
+
+ + vim.languages.scala.fixShortmess + + +
+
+

Remove the ‘F’ flag from shortmess to allow messages to be shown. Without doing this, autocommands that deal with filetypes prohibit messages from being shown

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/scala.nix> + +
+
+
+ + vim.languages.scala.lsp.enable + + +
+
+

Whether to enable Scala LSP support (metals).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/scala.nix> + +
+
+
+ + vim.languages.scala.lsp.package + + +
+
+

The metals package to use.

+ +

Type: +package

+ +

Default: +pkgs.metals

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/scala.nix> + +
+
+
+ + vim.languages.scala.lsp.extraMappings.listCommands + + +
+
+

List Metals commands

+ +

Type: +null or string

+ +

Default: +"<leader>lc"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/scala.nix> + +
+
+
+ + vim.languages.scala.lsp.extraSettings + + +
+
+

Extra settings passed to the metals config. Check nvim-metals docs for available options

+ +

Type: +attribute set of anything

+ +

Default:

{
+  excludedPackages = [
+    "akka.actor.typed.javadsl"
+    "com.github.swagger.akka.javadsl"
+  ];
+  showImplicitArguments = true;
+  showImplicitConversionsAndClasses = true;
+  showInferredType = true;
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/scala.nix> + +
+
+
+ + vim.languages.scala.treesitter.enable + + +
+
+

Whether to enable Scala treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/scala.nix> + +
+
+
+ + vim.languages.scala.treesitter.package + + +
+
+

The scala treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.scala

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/scala.nix> + +
+
+
+ + vim.languages.sql.enable + + +
+
+

Whether to enable SQL language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/sql.nix> + +
+
+
+ + vim.languages.sql.dialect + + +
+
+

SQL dialect for sqlfluff (if used)

+ +

Type: +string

+ +

Default: +"ansi"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/sql.nix> + +
+
+
+ + vim.languages.sql.extraDiagnostics.enable + + +
+
+

Whether to enable extra SQL diagnostics.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/sql.nix> + +
+
+
+ + vim.languages.sql.extraDiagnostics.types + + +
+
+

List of SQL diagnostics to enable

+ +

Type: +list of (value “sqlfluff” (singular enum) or (submodule))

+ +

Default:

[
+  "sqlfluff"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/sql.nix> + +
+
+
+ + vim.languages.sql.format.enable + + +
+
+

Whether to enable SQL formatting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/sql.nix> + +
+
+
+ + vim.languages.sql.format.package + + +
+
+

SQL formatter package

+ +

Type: +package

+ +

Default: +<derivation sqlfluff-3.2.5>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/sql.nix> + +
+
+
+ + vim.languages.sql.format.type + + +
+
+

SQL formatter to use

+ +

Type: +value “sqlfluff” (singular enum)

+ +

Default: +"sqlfluff"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/sql.nix> + +
+
+
+ + vim.languages.sql.lsp.enable + + +
+
+

Whether to enable SQL LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/sql.nix> + +
+
+
+ + vim.languages.sql.lsp.package + + +
+
+

SQL LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation sqls-0.2.28>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \"-data\" \"~/.cache/jdtls/workspace\"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/sql.nix> + +
+
+
+ + vim.languages.sql.lsp.server + + +
+
+

SQL LSP server to use

+ +

Type: +value “sqls” (singular enum)

+ +

Default: +"sqls"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/sql.nix> + +
+
+
+ + vim.languages.sql.treesitter.enable + + +
+
+

Whether to enable SQL treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/sql.nix> + +
+
+
+ + vim.languages.sql.treesitter.package + + +
+
+

SQL treesitter grammar to use

+ +

Type: +package

+ +

Default: +<derivation sql-grammar-0.0.0+rev=3d516e6>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/sql.nix> + +
+
+
+ + vim.languages.svelte.enable + + +
+
+

Whether to enable Svelte language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/svelte.nix> + +
+
+
+ + vim.languages.svelte.extraDiagnostics.enable + + +
+
+

Whether to enable extra Svelte diagnostics.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/svelte.nix> + +
+
+
+ + vim.languages.svelte.extraDiagnostics.types + + +
+
+

List of Svelte diagnostics to enable

+ +

Type: +list of (value “eslint_d” (singular enum) or (submodule))

+ +

Default:

[
+  "eslint_d"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/svelte.nix> + +
+
+
+ + vim.languages.svelte.format.enable + + +
+
+

Whether to enable Svelte formatting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/svelte.nix> + +
+
+
+ + vim.languages.svelte.format.package + + +
+
+

Svelte formatter package

+ +

Type: +package

+ +

Default: +<derivation prettier-3.3.3>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/svelte.nix> + +
+
+
+ + vim.languages.svelte.format.type + + +
+
+

Svelte formatter to use

+ +

Type: +one of “biome”, “prettier”

+ +

Default: +"prettier"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/svelte.nix> + +
+
+
+ + vim.languages.svelte.lsp.enable + + +
+
+

Whether to enable Svelte LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/svelte.nix> + +
+
+
+ + vim.languages.svelte.lsp.package + + +
+
+

Svelte LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation svelte-language-server-0.17.7>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \"-data\" \"~/.cache/jdtls/workspace\"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/svelte.nix> + +
+
+
+ + vim.languages.svelte.lsp.server + + +
+
+

Svelte LSP server to use

+ +

Type: +value “svelte” (singular enum)

+ +

Default: +"svelte"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/svelte.nix> + +
+
+
+ + vim.languages.svelte.treesitter.enable + + +
+
+

Whether to enable Svelte treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/svelte.nix> + +
+
+
+ + vim.languages.svelte.treesitter.sveltePackage + + +
+
+

The svelte treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.svelte

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/svelte.nix> + +
+
+
+ + vim.languages.tailwind.enable + + +
+
+

Whether to enable Tailwindcss language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/tailwind.nix> + +
+
+
+ + vim.languages.tailwind.lsp.enable + + +
+
+

Whether to enable Tailwindcss LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/tailwind.nix> + +
+
+
+ + vim.languages.tailwind.lsp.package + + +
+
+

Tailwindcss LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation tailwindcss-language-server-0.0.21>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \" - data \" \" ~/.cache/jdtls/workspace \"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/tailwind.nix> + +
+
+
+ + vim.languages.tailwind.lsp.server + + +
+
+

Tailwindcss LSP server to use

+ +

Type: +value “tailwindcss-language-server” (singular enum)

+ +

Default: +"tailwindcss-language-server"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/tailwind.nix> + +
+
+
+ + vim.languages.terraform.enable + + +
+
+

Whether to enable Terraform/HCL support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/terraform.nix> + +
+
+
+ + vim.languages.terraform.lsp.enable + + +
+
+

Whether to enable Terraform LSP support (terraform-ls).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/terraform.nix> + +
+
+
+ + vim.languages.terraform.lsp.package + + +
+
+

terraform-ls package

+ +

Type: +package

+ +

Default: +<derivation terraform-ls-0.34.3>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/terraform.nix> + +
+
+
+ + vim.languages.terraform.treesitter.enable + + +
+
+

Whether to enable Terraform treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/terraform.nix> + +
+
+
+ + vim.languages.terraform.treesitter.package + + +
+
+

The terraform treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.terraform

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/terraform.nix> + +
+
+
+ + vim.languages.ts.enable + + +
+
+

Whether to enable Typescript/Javascript language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ts.nix> + +
+
+
+ + vim.languages.ts.extensions.ts-error-translator.enable + + +
+
+

Whether to enable [ts-error-translator.nvim]: https://github.com/dmmulroy/ts-error-translator.nvim

Typescript error translation with [ts-error-translator.nvim]

.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ts.nix> + +
+
+
+ + vim.languages.ts.extensions.ts-error-translator.setupOpts + + +
+
+

Option table to pass into the setup function of ts-error-translator

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ts.nix> + +
+
+
+ + vim.languages.ts.extensions.ts-error-translator.setupOpts.auto_override_publish_diagnostics + + +
+
+

Automatically override the publish_diagnostics handler

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ts.nix> + +
+
+
+ + vim.languages.ts.extraDiagnostics.enable + + +
+
+

Whether to enable extra Typescript/Javascript diagnostics.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ts.nix> + +
+
+
+ + vim.languages.ts.extraDiagnostics.types + + +
+
+

List of Typescript/Javascript diagnostics to enable

+ +

Type: +list of (value “eslint_d” (singular enum) or (submodule))

+ +

Default:

[
+  "eslint_d"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ts.nix> + +
+
+
+ + vim.languages.ts.format.enable + + +
+
+

Whether to enable Typescript/Javascript formatting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ts.nix> + +
+
+
+ + vim.languages.ts.format.package + + +
+
+

Typescript/Javascript formatter package

+ +

Type: +package

+ +

Default: +<derivation prettier-3.3.3>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ts.nix> + +
+
+
+ + vim.languages.ts.format.type + + +
+
+

Typescript/Javascript formatter to use

+ +

Type: +one of “biome”, “prettier”, “prettierd”

+ +

Default: +"prettier"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ts.nix> + +
+
+
+ + vim.languages.ts.lsp.enable + + +
+
+

Whether to enable Typescript/Javascript LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ts.nix> + +
+
+
+ + vim.languages.ts.lsp.package + + +
+
+

Typescript/Javascript LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation typescript-language-server-4.3.3>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \"-data\" \"~/.cache/jdtls/workspace\"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ts.nix> + +
+
+
+ + vim.languages.ts.lsp.server + + +
+
+

Typescript/Javascript LSP server to use

+ +

Type: +one of “denols”, “ts_ls”, “tsserver”

+ +

Default: +"ts_ls"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ts.nix> + +
+
+
+ + vim.languages.ts.treesitter.enable + + +
+
+

Whether to enable Typescript/Javascript treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ts.nix> + +
+
+
+ + vim.languages.ts.treesitter.jsPackage + + +
+
+

The javascript treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.javascript

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ts.nix> + +
+
+
+ + vim.languages.ts.treesitter.tsPackage + + +
+
+

The tsx treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.tsx

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/ts.nix> + +
+
+
+ + vim.languages.typst.enable + + +
+
+

Whether to enable Typst language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/typst.nix> + +
+
+
+ + vim.languages.typst.extensions.typst-preview-nvim.enable + + +
+
+

Whether to enable [typst-preview.nvim]: https://github.com/chomosuke/typst-preview.nvim

Low latency typst preview for Neovim via [typst-preview.nvim] +.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/typst.nix> + +
+
+
+ + vim.languages.typst.extensions.typst-preview-nvim.setupOpts + + +
+
+

Option table to pass into the setup function of typst-preview-nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/typst.nix> + +
+
+
+ + vim.languages.typst.extensions.typst-preview-nvim.setupOpts.dependencies_bin + + +
+
+

Provide the path to binaries for dependencies. Setting this +to a non-null value will skip the download of the binary by +the plugin.

+ +

Type: +attribute set of string

+ +

Default:

{
+  tinymist = "\${pkgs.tinymist.out}/bin/tinymist";
+  websocat = "\${pkgs.websocat.out}/bin/websocat";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/typst.nix> + +
+
+
+ + vim.languages.typst.extensions.typst-preview-nvim.setupOpts.extra_args + + +
+
+

A list of extra arguments (or null) to be passed to previewer

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Example:

[
+  "--input=ver=draft"
+  "--ignore-system-fonts"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/typst.nix> + +
+
+
+ + vim.languages.typst.extensions.typst-preview-nvim.setupOpts.open_cmd + + +
+
+

Custom format string to open the output link provided with %s

+ +

Type: +null or string

+ +

Default: +null

+ +

Example: +"firefox %s -P typst-preview --class typst-preview"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/typst.nix> + +
+
+
+ + vim.languages.typst.format.enable + + +
+
+

Whether to enable Typst document formatting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/typst.nix> + +
+
+
+ + vim.languages.typst.format.package + + +
+
+

Typst formatter package

+ +

Type: +package

+ +

Default: +<derivation typstfmt-0.2.9>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/typst.nix> + +
+
+
+ + vim.languages.typst.format.type + + +
+
+

Typst formatter to use

+ +

Type: +one of “typstfmt”, “typstyle”

+ +

Default: +"typstfmt"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/typst.nix> + +
+
+
+ + vim.languages.typst.lsp.enable + + +
+
+

Whether to enable Typst LSP support (typst-lsp).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/typst.nix> + +
+
+
+ + vim.languages.typst.lsp.package + + +
+
+

typst-lsp package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation tinymist-0.12.4>

+ +

Example: +"[lib.getExe pkgs.jdt-language-server \"-data\" \"~/.cache/jdtls/workspace\"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/typst.nix> + +
+
+
+ + vim.languages.typst.lsp.server + + +
+
+

Typst LSP server to use

+ +

Type: +one of “tinymist”, “typst-lsp”

+ +

Default: +"tinymist"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/typst.nix> + +
+
+
+ + vim.languages.typst.treesitter.enable + + +
+
+

Whether to enable Typst treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/typst.nix> + +
+
+
+ + vim.languages.typst.treesitter.package + + +
+
+

The typst treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.typst

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/typst.nix> + +
+
+
+ + vim.languages.vala.enable + + +
+
+

Whether to enable Vala language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/vala.nix> + +
+
+
+ + vim.languages.vala.lsp.enable + + +
+
+

Whether to enable Vala LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/vala.nix> + +
+
+
+ + vim.languages.vala.lsp.package + + +
+
+

Vala LSP server package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation vala-language-server-wrapper>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/vala.nix> + +
+
+
+ + vim.languages.vala.lsp.server + + +
+
+

Vala LSP server to use

+ +

Type: +value “vala_ls” (singular enum)

+ +

Default: +"vala_ls"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/vala.nix> + +
+
+
+ + vim.languages.vala.treesitter.enable + + +
+
+

Whether to enable Vala treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/vala.nix> + +
+
+
+ + vim.languages.vala.treesitter.package + + +
+
+

The vala treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.vala

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/vala.nix> + +
+
+
+ + vim.languages.zig.enable + + +
+
+

Whether to enable Zig language support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/zig.nix> + +
+
+
+ + vim.languages.zig.lsp.enable + + +
+
+

Whether to enable Zig LSP support.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/zig.nix> + +
+
+
+ + vim.languages.zig.lsp.package + + +
+
+

ZLS package, or the command to run as a list of strings

+ +

Type: +package or list of string

+ +

Default: +<derivation zls-0.13.0>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/zig.nix> + +
+
+
+ + vim.languages.zig.lsp.server + + +
+
+

Zig LSP server to use

+ +

Type: +value “zls” (singular enum)

+ +

Default: +"zls"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/zig.nix> + +
+
+
+ + vim.languages.zig.treesitter.enable + + +
+
+

Whether to enable Zig treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/zig.nix> + +
+
+
+ + vim.languages.zig.treesitter.package + + +
+
+

The zig treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.zig

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/languages/zig.nix> + +
+
+
+ + vim.lazy.enable + + +
+
+

Whether to enable plugin lazy-loading via lz.n and lzn-auto-require.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.enableLznAutoRequire + + +
+
+

Enable lzn-auto-require. Since builtin plugins rely on this, only turn +off for debugging.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.loader + + +
+
+

Lazy loader to use

+ +

Type: +value “lz.n” (singular enum)

+ +

Default: +"lz.n"

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins + + +
+
+

Plugins to lazy load.

The attribute key is used as the plugin name: for the default vim.g.lz_n.load +function this should be either the package.pname or package.name.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Example:

''
+  {
+    toggleterm-nvim = {
+      package = "toggleterm-nvim";
+      setupModule = "toggleterm";
+      setupOpts = cfg.setupOpts;
+  
+      after = "require('toggleterm').do_something()";
+      cmd = ["ToggleTerm"];
+    };
+  
+    $''${pkgs.vimPlugins.vim-bbye.pname} = {
+      package = pkgs.vimPlugins.vim-bbye;
+      cmd = ["Bdelete" "Bwipeout"];
+    };
+  }
+''
+
+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins.<name>.enabled + + +
+
+

When false, or if the lua function returns false, this plugin will not be included in the spec

+ +

Type: +null or boolean or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins.<name>.package + + +
+
+

Plugin package.

If null, a custom load function must be provided

+ +

Type: +null or null or package or one of “alpha-nvim”, “base16”, “bufdelete-nvim”, “catppuccin”, “ccc”, “cellular-automaton”, “chatgpt”, “cheatsheet-nvim”, “cinnamon-nvim”, “cmp-buffer”, “cmp-luasnip”, “cmp-nvim-lsp”, “cmp-path”, “cmp-treesitter”, “codewindow-nvim”, “comment-nvim”, “copilot-cmp”, “copilot-lua”, “crates-nvim”, “csharpls-extended”, “dashboard-nvim”, “diffview-nvim”, “dracula”, “dressing-nvim”, “elixir-tools”, “fastaction-nvim”, “fidget-nvim”, “flutter-tools”, “friendly-snippets”, “gesture-nvim”, “gitsigns-nvim”, “glow-nvim”, “gruvbox”, “highlight-undo”, “hop-nvim”, “icon-picker-nvim”, “image-nvim”, “indent-blankline”, “leap-nvim”, “lsp-lines”, “lsp-signature”, “lspkind”, “lspsaga”, “lua-utils-nvim”, “lualine”, “luasnip”, “lz-n”, “lzn-auto-require”, “mind-nvim”, “minimap-vim”, “modes-nvim”, “neo-tree-nvim”, “neocord”, “neodev-nvim”, “neorg”, “neorg-telescope”, “new-file-template-nvim”, “noice-nvim”, “none-ls”, “nui-nvim”, “nvim-autopairs”, “nvim-bufferline-lua”, “nvim-cmp”, “nvim-colorizer-lua”, “nvim-cursorline”, “nvim-dap”, “nvim-dap-go”, “nvim-dap-ui”, “nvim-docs-view”, “nvim-lightbulb”, “nvim-lspconfig”, “nvim-metals”, “nvim-navbuddy”, “nvim-navic”, “nvim-neoclip”, “nvim-nio”, “nvim-notify”, “nvim-scrollbar”, “nvim-session-manager”, “nvim-surround”, “nvim-tree-lua”, “nvim-treesitter-context”, “nvim-ts-autotag”, “nvim-web-devicons”, “obsidian-nvim”, “omnisharp-extended”, “onedark”, “orgmode-nvim”, “otter-nvim”, “oxocarbon”, “pathlib-nvim”, “plenary-nvim”, “precognition-nvim”, “project-nvim”, “registers”, “rose-pine”, “rtp-nvim”, “run-nvim”, “rustaceanvim”, “smartcolumn”, “sqls-nvim”, “tabular”, “telescope”, “tiny-devicons-auto-colors”, “todo-comments”, “toggleterm-nvim”, “tokyonight”, “trouble”, “ts-error-translator”, “typst-preview-nvim”, “vim-dirtytalk”, “vim-fugitive”, “vim-illuminate”, “vim-markdown”, “vim-repeat”, “vim-startify”, “which-key”, “nvim-treesitter”, “flutter-tools-patched”, “vim-repeat”

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins.<name>.after + + +
+
+

Lua code to run after plugin is loaded. This will be wrapped in a function.

If vim.lazy.plugins.<name>.setupModule is provided, the setup will be ran before after.

+ +

Type: +null or strings concatenated with “\n”

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins.<name>.before + + +
+
+

Lua code to run before plugin is loaded. This will be wrapped in a function.

+ +

Type: +null or strings concatenated with “\n”

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins.<name>.beforeAll + + +
+
+

Lua code to run before any plugins are loaded. This will be wrapped in a function.

+ +

Type: +null or strings concatenated with “\n”

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins.<name>.cmd + + +
+
+

Lazy-load on command

+ +

Type: +null or string or list of string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins.<name>.colorscheme + + +
+
+

Lazy-load on colorscheme.

+ +

Type: +null or string or list of string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins.<name>.event + + +
+
+

Lazy-load on event

+ +

Type: +null or string or list of string or (submodule)

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins.<name>.ft + + +
+
+

Lazy-load on filetype

+ +

Type: +null or string or list of string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins.<name>.keys + + +
+
+

Lazy-load on key mapping

+ +

Type: +null or string or list of (submodule) or list of string

+ +

Default: +null

+ +

Example:

''
+  keys = [
+    {
+      mode = "n";
+      key = "<leader>s";
+      action = ":DapStepOver<cr>";
+      desc = "DAP Step Over";
+    }
+    {
+      mode = ["n", "x"];
+      key = "<leader>dc";
+      action = "function() require('dap').continue() end";
+      lua = true;
+      desc = "DAP Continue";
+    }
+  ]
+''
+
+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins.<name>.lazy + + +
+
+

Lazy-load manually, e.g. using trigger_load.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins.<name>.load + + +
+
+

Lua code to override the vim.g.lz_n.load() function for a single plugin.

This will be wrapped in a function(name) ... end.

+ +

Type: +null or strings concatenated with “\n”

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins.<name>.priority + + +
+
+

Only useful for stat plugins (not lazy-loaded) to force loading certain plugins first.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins.<name>.setupModule + + +
+
+

Lua module to run setup function on.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lazy.plugins.<name>.setupOpts + + +
+
+

Options to pass to the setup function

+ +

Type: +attribute set of anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/lazy/lazy.nix> + +
+
+
+ + vim.lineNumberMode + + +
+
+

How line numbers are displayed.

+ +

Type: +one of “relative”, “number”, “relNumber”, “none”

+ +

Default: +"relNumber"

+ +

Example: +"none"

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/basic.nix> + +
+
+
+ + vim.lsp.enable + + +
+
+

Whether to enable LSP, also enabled automatically through null-ls and lspconfig options.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.formatOnSave + + +
+
+

Whether to enable format on save.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.lightbulb.enable + + +
+
+

Whether to enable Lightbulb for code actions. Requires an emoji font.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lightbulb/lightbulb.nix> + +
+
+
+ + vim.lsp.lightbulb.setupOpts + + +
+
+

Option table to pass into the setup function of nvim-lightbulb

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lightbulb/lightbulb.nix> + +
+
+
+ + vim.lsp.lspSignature.enable + + +
+
+

Whether to enable lsp signature viewer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lsp-signature/lsp-signature.nix> + +
+
+
+ + vim.lsp.lspSignature.setupOpts + + +
+
+

Option table to pass into the setup function of lsp-signature

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lsp-signature/lsp-signature.nix> + +
+
+
+ + vim.lsp.lspconfig.enable + + +
+
+

Whether to enable nvim-lspconfig, also enabled automatically.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspconfig/lspconfig.nix> + +
+
+
+ + vim.lsp.lspconfig.sources + + +
+
+

nvim-lspconfig sources

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspconfig/lspconfig.nix> + +
+
+
+ + vim.lsp.lspkind.enable + + +
+
+

Whether to enable vscode-like pictograms for lsp [lspkind].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspkind/lspkind.nix> + +
+
+
+ + vim.lsp.lspkind.setupOpts + + +
+
+

Option table to pass into the setup function of lspkind.nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspkind/lspkind.nix> + +
+
+
+ + vim.lsp.lspkind.setupOpts.before + + +
+
+

The function that will be called before lspkind’s modifications are applied

+ +

Type: +null or (luaInline)

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspkind/lspkind.nix> + +
+
+
+ + vim.lsp.lspkind.setupOpts.mode + + +
+
+

Defines how annotations are shown

+ +

Type: +one of “text”, “text_symbol”, “symbol_text”, “symbol”

+ +

Default: +"symbol_text"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspkind/lspkind.nix> + +
+
+
+ + vim.lsp.lsplines.enable + + +
+
+

Whether to enable diagnostics using virtual lines on top of the real line of code. [lsp_lines] +.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lsplines/lsplines.nix> + +
+
+
+ + vim.lsp.lspsaga.enable + + +
+
+

Whether to enable LSP Saga.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspsaga/lspsaga.nix> + +
+
+
+ + vim.lsp.lspsaga.mappings.codeAction + + +
+
+

Code action [LSPSaga]

+ +

Type: +null or string

+ +

Default: +"<leader>ca"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspsaga/lspsaga.nix> + +
+
+
+ + vim.lsp.lspsaga.mappings.lspFinder + + +
+
+

LSP Finder [LSPSaga]

+ +

Type: +null or string

+ +

Default: +"<leader>lf"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspsaga/lspsaga.nix> + +
+
+
+ + vim.lsp.lspsaga.mappings.nextDiagnostic + + +
+
+

Next diagnostic [LSPSaga]

+ +

Type: +null or string

+ +

Default: +"<leader>ln"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspsaga/lspsaga.nix> + +
+
+
+ + vim.lsp.lspsaga.mappings.previewDefinition + + +
+
+

Preview definition [LSPSaga]

+ +

Type: +null or string

+ +

Default: +"<leader>ld"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspsaga/lspsaga.nix> + +
+
+
+ + vim.lsp.lspsaga.mappings.previousDiagnostic + + +
+
+

Previous diagnostic [LSPSaga]

+ +

Type: +null or string

+ +

Default: +"<leader>lp"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspsaga/lspsaga.nix> + +
+
+
+ + vim.lsp.lspsaga.mappings.rename + + +
+
+

Rename [LSPSaga]

+ +

Type: +null or string

+ +

Default: +"<leader>lr"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspsaga/lspsaga.nix> + +
+
+
+ + vim.lsp.lspsaga.mappings.renderHoveredDoc + + +
+
+

Rendered hovered docs [LSPSaga]

+ +

Type: +null or string

+ +

Default: +"<leader>lh"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspsaga/lspsaga.nix> + +
+
+
+ + vim.lsp.lspsaga.mappings.showCursorDiagnostics + + +
+
+

Show cursor diagnostics [LSPSaga]

+ +

Type: +null or string

+ +

Default: +"<leader>lc"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspsaga/lspsaga.nix> + +
+
+
+ + vim.lsp.lspsaga.mappings.showLineDiagnostics + + +
+
+

Show line diagnostics [LSPSaga]

+ +

Type: +null or string

+ +

Default: +"<leader>ll"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspsaga/lspsaga.nix> + +
+
+
+ + vim.lsp.lspsaga.mappings.signatureHelp + + +
+
+

Signature help [LSPSaga]

+ +

Type: +null or string

+ +

Default: +"<leader>ls"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspsaga/lspsaga.nix> + +
+
+
+ + vim.lsp.lspsaga.mappings.smartScrollDown + + +
+
+

Smart scroll up [LSPSaga]

+ +

Type: +null or string

+ +

Default: +"<C-b>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspsaga/lspsaga.nix> + +
+
+
+ + vim.lsp.lspsaga.mappings.smartScrollUp + + +
+
+

Smart scroll up [LSPSaga]

+ +

Type: +null or string

+ +

Default: +"<C-f>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/lspsaga/lspsaga.nix> + +
+
+
+ + vim.lsp.mappings.addWorkspaceFolder + + +
+
+

Add workspace folder

+ +

Type: +null or string

+ +

Default: +"<leader>lwa"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.codeAction + + +
+
+

Code action

+ +

Type: +null or string

+ +

Default: +"<leader>la"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.documentHighlight + + +
+
+

Document highlight

+ +

Type: +null or string

+ +

Default: +"<leader>lH"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.format + + +
+
+

Format

+ +

Type: +null or string

+ +

Default: +"<leader>lf"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.goToDeclaration + + +
+
+

Go to declaration

+ +

Type: +null or string

+ +

Default: +"<leader>lgD"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.goToDefinition + + +
+
+

Go to definition

+ +

Type: +null or string

+ +

Default: +"<leader>lgd"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.goToType + + +
+
+

Go to type

+ +

Type: +null or string

+ +

Default: +"<leader>lgt"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.hover + + +
+
+

Trigger hover

+ +

Type: +null or string

+ +

Default: +"<leader>lh"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.listDocumentSymbols + + +
+
+

List document symbols

+ +

Type: +null or string

+ +

Default: +"<leader>lS"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.listImplementations + + +
+
+

List implementations

+ +

Type: +null or string

+ +

Default: +"<leader>lgi"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.listReferences + + +
+
+

List references

+ +

Type: +null or string

+ +

Default: +"<leader>lgr"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.listWorkspaceFolders + + +
+
+

List workspace folders

+ +

Type: +null or string

+ +

Default: +"<leader>lwl"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.listWorkspaceSymbols + + +
+
+

List workspace symbols

+ +

Type: +null or string

+ +

Default: +"<leader>lws"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.nextDiagnostic + + +
+
+

Go to next diagnostic

+ +

Type: +null or string

+ +

Default: +"<leader>lgn"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.openDiagnosticFloat + + +
+
+

Open diagnostic float

+ +

Type: +null or string

+ +

Default: +"<leader>le"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.previousDiagnostic + + +
+
+

Go to previous diagnostic

+ +

Type: +null or string

+ +

Default: +"<leader>lgp"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.removeWorkspaceFolder + + +
+
+

Remove workspace folder

+ +

Type: +null or string

+ +

Default: +"<leader>lwr"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.renameSymbol + + +
+
+

Rename symbol

+ +

Type: +null or string

+ +

Default: +"<leader>ln"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.signatureHelp + + +
+
+

Signature help

+ +

Type: +null or string

+ +

Default: +"<leader>ls"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.mappings.toggleFormatOnSave + + +
+
+

Toggle format on save

+ +

Type: +null or string

+ +

Default: +"<leader>ltf"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/module.nix> + +
+
+
+ + vim.lsp.null-ls.enable + + +
+
+

Whether to enable null-ls, also enabled automatically.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/null-ls/null-ls.nix> + +
+
+
+ + vim.lsp.null-ls.debounce + + +
+
+

Default debounce

+ +

Type: +signed integer

+ +

Default: +250

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/null-ls/null-ls.nix> + +
+
+
+ + vim.lsp.null-ls.debug + + +
+
+

Whether to enable debugging information for `null-ls.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/null-ls/null-ls.nix> + +
+
+
+ + vim.lsp.null-ls.default_timeout + + +
+
+

Default timeout value, in milliseconds

+ +

Type: +signed integer

+ +

Default: +5000

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/null-ls/null-ls.nix> + +
+
+
+ + vim.lsp.null-ls.diagnostics_format + + +
+
+

Diagnostic output format for null-ls

+ +

Type: +string

+ +

Default: +"[#{m}] #{s} (#{c})"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/null-ls/null-ls.nix> + +
+
+
+ + vim.lsp.null-ls.sources + + +
+
+

null-ls sources

+ +

Type: +attribute set of string

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/null-ls/null-ls.nix> + +
+
+
+ + vim.lsp.nvim-docs-view.enable + + +
+
+

Whether to enable nvim-docs-view, for displaying lsp hover documentation in a side panel…

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/nvim-docs-view/nvim-docs-view.nix> + +
+
+
+ + vim.lsp.nvim-docs-view.mappings.viewToggle + + +
+
+

Open or close the docs view panel

+ +

Type: +null or string

+ +

Default: +"lvt"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/nvim-docs-view/nvim-docs-view.nix> + +
+
+
+ + vim.lsp.nvim-docs-view.mappings.viewUpdate + + +
+
+

Manually update the docs view panel

+ +

Type: +null or string

+ +

Default: +"lvu"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/nvim-docs-view/nvim-docs-view.nix> + +
+
+
+ + vim.lsp.nvim-docs-view.setupOpts + + +
+
+

Option table to pass into the setup function of nvim-docs-view

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/nvim-docs-view/nvim-docs-view.nix> + +
+
+
+ + vim.lsp.nvim-docs-view.setupOpts.height + + +
+
+

Height of the docs view panel if the position is set to either top or bottom

+ +

Type: +signed integer

+ +

Default: +10

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/nvim-docs-view/nvim-docs-view.nix> + +
+
+
+ + vim.lsp.nvim-docs-view.setupOpts.position + + +
+
+

Where to open the docs view panel

+ +

Type: +one of “left”, “right”, “top”, “bottom”

+ +

Default: +"right"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/nvim-docs-view/nvim-docs-view.nix> + +
+
+
+ + vim.lsp.nvim-docs-view.setupOpts.update_mode + + +
+
+

Determines the mechanism used to update the docs view panel content.

  • If auto, the content will update upon cursor move.

  • If manual, the content will only update once :DocsViewUpdate is called

+ +

Type: +one of “auto”, “manual”

+ +

Default: +"auto"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/nvim-docs-view/nvim-docs-view.nix> + +
+
+
+ + vim.lsp.nvim-docs-view.setupOpts.width + + +
+
+

Width of the docs view panel if the position is set to either left or right

+ +

Type: +signed integer

+ +

Default: +60

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/nvim-docs-view/nvim-docs-view.nix> + +
+
+
+ + vim.lsp.otter-nvim.enable + + +
+
+

Whether to enable lsp features and a code completion source for code embedded in other documents [otter-nvim] +.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/otter/otter.nix> + +
+
+
+ + vim.lsp.otter-nvim.mappings.toggle + + +
+
+

Activate LSP on Cursor Position [otter-nvim]

+ +

Type: +null or string

+ +

Default: +"<leader>lo"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/otter/otter.nix> + +
+
+
+ + vim.lsp.otter-nvim.setupOpts + + +
+
+

Option table to pass into the setup function of otter.nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/otter/otter.nix> + +
+
+
+ + vim.lsp.otter-nvim.setupOpts.buffers.set_filetype + + +
+
+

if set to true, the filetype of the otterbuffers will be set. Other wide only +the autocommand of lspconfig that attaches the language server will be +executed without setting the filetype

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/otter/otter.nix> + +
+
+
+ + vim.lsp.otter-nvim.setupOpts.buffers.write_to_disk + + +
+
+

write <path>.otter.<embedded language extension> files to disk on save of main buffer. +Useful for some linters that require actual files. +Otter files are deleted on quit or main buffer close

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/otter/otter.nix> + +
+
+
+ + vim.lsp.otter-nvim.setupOpts.handle_leading_whitespace + + +
+
+

otter may not work the way you expect when entire code blocks are indented +(eg. in Org files) When true, otter handles these cases fully.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/otter/otter.nix> + +
+
+
+ + vim.lsp.otter-nvim.setupOpts.lsp.diagnostic_update_event + + +
+
+

:h events that cause the diagnostic to update. +Set to: {“BufWritePost”, “InsertLeave”, “TextChanged” } +for less performant but more instant diagnostic updates

+ +

Type: +list of string

+ +

Default:

[
+  "BufWritePost"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/otter/otter.nix> + +
+
+
+ + vim.lsp.otter-nvim.setupOpts.strip_wrapping_quote_characters + + +
+
+

Type: +list of string

+ +

Default:

[
+  "'"
+  "\""
+  "`"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/otter/otter.nix> + +
+
+
+ + vim.lsp.trouble.enable + + +
+
+

Whether to enable trouble diagnostics viewer.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/trouble/trouble.nix> + +
+
+
+ + vim.lsp.trouble.mappings.documentDiagnostics + + +
+
+

Document diagnostics [trouble]

+ +

Type: +null or string

+ +

Default: +"<leader>ld"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/trouble/trouble.nix> + +
+
+
+ + vim.lsp.trouble.mappings.locList + + +
+
+

LOCList [trouble]

+ +

Type: +null or string

+ +

Default: +"<leader>xl"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/trouble/trouble.nix> + +
+
+
+ + vim.lsp.trouble.mappings.lspReferences + + +
+
+

LSP References [trouble]

+ +

Type: +null or string

+ +

Default: +"<leader>lr"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/trouble/trouble.nix> + +
+
+
+ + vim.lsp.trouble.mappings.quickfix + + +
+
+

QuickFix [trouble]

+ +

Type: +null or string

+ +

Default: +"<leader>xq"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/trouble/trouble.nix> + +
+
+
+ + vim.lsp.trouble.mappings.symbols + + +
+
+

Symbols [trouble]

+ +

Type: +null or string

+ +

Default: +"<leader>xs"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/trouble/trouble.nix> + +
+
+
+ + vim.lsp.trouble.mappings.workspaceDiagnostics + + +
+
+

Workspace diagnostics [trouble]

+ +

Type: +null or string

+ +

Default: +"<leader>lwd"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/trouble/trouble.nix> + +
+
+
+ + vim.lsp.trouble.setupOpts + + +
+
+

Option table to pass into the setup function of Trouble

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/lsp/trouble/trouble.nix> + +
+
+
+ + vim.luaConfigPost + + +
+
+

Verbatim lua code that will be inserted after +the result of the luaConfigRc DAG has been resolved

This option does not take a DAG set, but a string +instead. Useful when you’d like to insert contents +of lua configs after the DAG result.

+ +

Type: +string

+ +

Default: +""

+ +

Example: +"$${builtins.readFile ./my-lua-config-post.lua}"

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.luaConfigPre + + +
+
+

Verbatim lua code that will be inserted before +the result of luaConfigRc DAG has been resolved.

This option does not take a DAG set, but a string +instead. Useful when you’d like to insert contents +of lua configs after the DAG result.

Warning

You do not want to override this option with mkForce +It is used internally to set certain options as early +as possible and should be avoided unless you know what +you’re doing. Passing a string to this option will +merge it with the default contents.

+ +

Type: +string

+ +

Default: +By default, this option will append paths in +vim.additionalRuntimePaths +to the runtimepath and enable the experimental Lua module loader +if vim.enableLuaLoader is set to true.

+ +

Example: +"$${builtins.readFile ./my-lua-config-pre.lua}"

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.luaConfigRC + + +
+
+

Lua configuration, either as a string or a DAG.

If this option is passed as a DAG, it will be resolved +according to the DAG resolution rules (e.g. entryBefore +or entryAfter) as per the nvf extended library.

+ +

Type: +(DAG of strings concatenated with “\n”) or string

+ +

Default: +{ }

+ +

Example:

-- Set the tab size to 4 spaces
+vim.opt.tabstop = 4
+vim.opt.shiftwidth = 4
+vim.opt.expandtab = true
+
+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.luaPackages + + +
+
+

List of lua packages to install

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example: +"[\"magick\" \"serpent\"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/build/options.nix> + +
+
+
+ + vim.maps.command + + +
+
+

Mappings for command-line mode

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.command.<name>.action + + +
+
+

The command to execute.

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.command.<name>.desc + + +
+
+

A description of this keybind, to be shown in which-key, if you have it enabled.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.command.<name>.expr + + +
+
+

Means that the action is actually an expression. Equivalent to adding <expr> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.command.<name>.lua + + +
+
+

If true, action is considered to be lua code. +Thus, it will not be wrapped in "".

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.command.<name>.noremap + + +
+
+

Whether to use the ‘noremap’ variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.command.<name>.nowait + + +
+
+

Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.command.<name>.script + + +
+
+

Equivalent to adding <script> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.command.<name>.silent + + +
+
+

Whether this mapping should be silent. Equivalent to adding <silent> to a map.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.command.<name>.unique + + +
+
+

Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insert + + +
+
+

Mappings for insert mode

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insert.<name>.action + + +
+
+

The command to execute.

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insert.<name>.desc + + +
+
+

A description of this keybind, to be shown in which-key, if you have it enabled.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insert.<name>.expr + + +
+
+

Means that the action is actually an expression. Equivalent to adding <expr> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insert.<name>.lua + + +
+
+

If true, action is considered to be lua code. +Thus, it will not be wrapped in "".

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insert.<name>.noremap + + +
+
+

Whether to use the ‘noremap’ variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insert.<name>.nowait + + +
+
+

Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insert.<name>.script + + +
+
+

Equivalent to adding <script> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insert.<name>.silent + + +
+
+

Whether this mapping should be silent. Equivalent to adding <silent> to a map.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insert.<name>.unique + + +
+
+

Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insertCommand + + +
+
+

Mappings for insert and command-line mode

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insertCommand.<name>.action + + +
+
+

The command to execute.

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insertCommand.<name>.desc + + +
+
+

A description of this keybind, to be shown in which-key, if you have it enabled.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insertCommand.<name>.expr + + +
+
+

Means that the action is actually an expression. Equivalent to adding <expr> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insertCommand.<name>.lua + + +
+
+

If true, action is considered to be lua code. +Thus, it will not be wrapped in "".

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insertCommand.<name>.noremap + + +
+
+

Whether to use the ‘noremap’ variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insertCommand.<name>.nowait + + +
+
+

Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insertCommand.<name>.script + + +
+
+

Equivalent to adding <script> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insertCommand.<name>.silent + + +
+
+

Whether this mapping should be silent. Equivalent to adding <silent> to a map.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.insertCommand.<name>.unique + + +
+
+

Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.lang + + +
+
+

Mappings for insert, command-line and lang-arg mode

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.lang.<name>.action + + +
+
+

The command to execute.

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.lang.<name>.desc + + +
+
+

A description of this keybind, to be shown in which-key, if you have it enabled.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.lang.<name>.expr + + +
+
+

Means that the action is actually an expression. Equivalent to adding <expr> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.lang.<name>.lua + + +
+
+

If true, action is considered to be lua code. +Thus, it will not be wrapped in "".

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.lang.<name>.noremap + + +
+
+

Whether to use the ‘noremap’ variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.lang.<name>.nowait + + +
+
+

Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.lang.<name>.script + + +
+
+

Equivalent to adding <script> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.lang.<name>.silent + + +
+
+

Whether this mapping should be silent. Equivalent to adding <silent> to a map.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.lang.<name>.unique + + +
+
+

Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normal + + +
+
+

Mappings for normal mode

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normal.<name>.action + + +
+
+

The command to execute.

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normal.<name>.desc + + +
+
+

A description of this keybind, to be shown in which-key, if you have it enabled.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normal.<name>.expr + + +
+
+

Means that the action is actually an expression. Equivalent to adding <expr> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normal.<name>.lua + + +
+
+

If true, action is considered to be lua code. +Thus, it will not be wrapped in "".

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normal.<name>.noremap + + +
+
+

Whether to use the ‘noremap’ variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normal.<name>.nowait + + +
+
+

Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normal.<name>.script + + +
+
+

Equivalent to adding <script> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normal.<name>.silent + + +
+
+

Whether this mapping should be silent. Equivalent to adding <silent> to a map.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normal.<name>.unique + + +
+
+

Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normalVisualOp + + +
+
+

Mappings for normal, visual, select and operator-pending (same as plain ‘map’) mode

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normalVisualOp.<name>.action + + +
+
+

The command to execute.

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normalVisualOp.<name>.desc + + +
+
+

A description of this keybind, to be shown in which-key, if you have it enabled.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normalVisualOp.<name>.expr + + +
+
+

Means that the action is actually an expression. Equivalent to adding <expr> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normalVisualOp.<name>.lua + + +
+
+

If true, action is considered to be lua code. +Thus, it will not be wrapped in "".

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normalVisualOp.<name>.noremap + + +
+
+

Whether to use the ‘noremap’ variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normalVisualOp.<name>.nowait + + +
+
+

Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normalVisualOp.<name>.script + + +
+
+

Equivalent to adding <script> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normalVisualOp.<name>.silent + + +
+
+

Whether this mapping should be silent. Equivalent to adding <silent> to a map.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.normalVisualOp.<name>.unique + + +
+
+

Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.operator + + +
+
+

Mappings for operator-pending mode

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.operator.<name>.action + + +
+
+

The command to execute.

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.operator.<name>.desc + + +
+
+

A description of this keybind, to be shown in which-key, if you have it enabled.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.operator.<name>.expr + + +
+
+

Means that the action is actually an expression. Equivalent to adding <expr> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.operator.<name>.lua + + +
+
+

If true, action is considered to be lua code. +Thus, it will not be wrapped in "".

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.operator.<name>.noremap + + +
+
+

Whether to use the ‘noremap’ variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.operator.<name>.nowait + + +
+
+

Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.operator.<name>.script + + +
+
+

Equivalent to adding <script> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.operator.<name>.silent + + +
+
+

Whether this mapping should be silent. Equivalent to adding <silent> to a map.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.operator.<name>.unique + + +
+
+

Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.select + + +
+
+

Mappings for select mode

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.select.<name>.action + + +
+
+

The command to execute.

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.select.<name>.desc + + +
+
+

A description of this keybind, to be shown in which-key, if you have it enabled.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.select.<name>.expr + + +
+
+

Means that the action is actually an expression. Equivalent to adding <expr> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.select.<name>.lua + + +
+
+

If true, action is considered to be lua code. +Thus, it will not be wrapped in "".

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.select.<name>.noremap + + +
+
+

Whether to use the ‘noremap’ variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.select.<name>.nowait + + +
+
+

Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.select.<name>.script + + +
+
+

Equivalent to adding <script> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.select.<name>.silent + + +
+
+

Whether this mapping should be silent. Equivalent to adding <silent> to a map.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.select.<name>.unique + + +
+
+

Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.terminal + + +
+
+

Mappings for terminal mode

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.terminal.<name>.action + + +
+
+

The command to execute.

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.terminal.<name>.desc + + +
+
+

A description of this keybind, to be shown in which-key, if you have it enabled.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.terminal.<name>.expr + + +
+
+

Means that the action is actually an expression. Equivalent to adding <expr> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.terminal.<name>.lua + + +
+
+

If true, action is considered to be lua code. +Thus, it will not be wrapped in "".

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.terminal.<name>.noremap + + +
+
+

Whether to use the ‘noremap’ variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.terminal.<name>.nowait + + +
+
+

Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.terminal.<name>.script + + +
+
+

Equivalent to adding <script> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.terminal.<name>.silent + + +
+
+

Whether this mapping should be silent. Equivalent to adding <silent> to a map.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.terminal.<name>.unique + + +
+
+

Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visual + + +
+
+

Mappings for visual and select mode

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visual.<name>.action + + +
+
+

The command to execute.

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visual.<name>.desc + + +
+
+

A description of this keybind, to be shown in which-key, if you have it enabled.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visual.<name>.expr + + +
+
+

Means that the action is actually an expression. Equivalent to adding <expr> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visual.<name>.lua + + +
+
+

If true, action is considered to be lua code. +Thus, it will not be wrapped in "".

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visual.<name>.noremap + + +
+
+

Whether to use the ‘noremap’ variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visual.<name>.nowait + + +
+
+

Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visual.<name>.script + + +
+
+

Equivalent to adding <script> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visual.<name>.silent + + +
+
+

Whether this mapping should be silent. Equivalent to adding <silent> to a map.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visual.<name>.unique + + +
+
+

Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visualOnly + + +
+
+

Mappings for visual only mode

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visualOnly.<name>.action + + +
+
+

The command to execute.

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visualOnly.<name>.desc + + +
+
+

A description of this keybind, to be shown in which-key, if you have it enabled.

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visualOnly.<name>.expr + + +
+
+

Means that the action is actually an expression. Equivalent to adding <expr> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visualOnly.<name>.lua + + +
+
+

If true, action is considered to be lua code. +Thus, it will not be wrapped in "".

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visualOnly.<name>.noremap + + +
+
+

Whether to use the ‘noremap’ variant of the command, ignoring any custom mappings on the defined action. It is highly advised to keep this on, which is the default.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visualOnly.<name>.nowait + + +
+
+

Whether to wait for extra input on ambiguous mappings. Equivalent to adding <nowait> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visualOnly.<name>.script + + +
+
+

Equivalent to adding <script> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visualOnly.<name>.silent + + +
+
+

Whether this mapping should be silent. Equivalent to adding <silent> to a map.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.maps.visualOnly.<name>.unique + + +
+
+

Whether to fail if the map is already defined. Equivalent to adding <unique> to a map.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/mappings/options.nix> + +
+
+
+ + vim.minimap.codewindow.enable + + +
+
+

Whether to enable codewindow plugin for minimap view.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/minimap/codewindow/codewindow.nix> + +
+
+
+ + vim.minimap.codewindow.mappings.close + + +
+
+

Close minimap [codewindow]

+ +

Type: +null or string

+ +

Default: +"<leader>mc"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/minimap/codewindow/codewindow.nix> + +
+
+
+ + vim.minimap.codewindow.mappings.open + + +
+
+

Open minimap [codewindow]

+ +

Type: +null or string

+ +

Default: +"<leader>mo"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/minimap/codewindow/codewindow.nix> + +
+
+
+ + vim.minimap.codewindow.mappings.toggle + + +
+
+

Toggle minimap [codewindow]

+ +

Type: +null or string

+ +

Default: +"<leader>mm"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/minimap/codewindow/codewindow.nix> + +
+
+
+ + vim.minimap.codewindow.mappings.toggleFocus + + +
+
+

Toggle minimap focus [codewindow]

+ +

Type: +null or string

+ +

Default: +"<leader>mf"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/minimap/codewindow/codewindow.nix> + +
+
+
+ + vim.minimap.minimap-vim.enable + + +
+
+

Whether to enable minimap view [minimap-vim].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/minimap/minimap-vim/minimap-vim.nix> + +
+
+
+ + vim.notes.mind-nvim.enable + + +
+
+

Whether to enable note organizer tool for Neovim [mind-nvim].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/mind-nvim/mind-nvim.nix> + +
+
+
+ + vim.notes.neorg.enable + + +
+
+

Whether to enable Neorg: An intuitive note-taking and organization tool with a structured nested syntax. +.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/neorg/neorg.nix> + +
+
+
+ + vim.notes.neorg.setupOpts + + +
+
+

Option table to pass into the setup function of Neorg

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/neorg/neorg.nix> + +
+
+
+ + vim.notes.neorg.setupOpts.load."core.defaults" + + +
+
+

all of the most important modules that any user would want to have a “just works” experience

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/neorg/neorg.nix> + +
+
+
+ + vim.notes.neorg.setupOpts.load."core.defaults".enable + + +
+
+

Whether to enable all of the most important modules that any user would want to have a “just works” experience +.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/neorg/neorg.nix> + +
+
+
+ + vim.notes.neorg.setupOpts.load."core.defaults".config.disable + + +
+
+

list of modules from to be disabled from core.defaults

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example:

[
+  "core.autocommands"
+  "core.itero"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/neorg/neorg.nix> + +
+
+
+ + vim.notes.neorg.treesitter.enable + + +
+
+

Whether to enable Neorg treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/neorg/neorg.nix> + +
+
+
+ + vim.notes.neorg.treesitter.norgPackage + + +
+
+

The norg treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.norg

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/neorg/neorg.nix> + +
+
+
+ + vim.notes.obsidian.enable + + +
+
+

Whether to enable complementary neovim plugins for Obsidian editor.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/obsidian/obsidian.nix> + +
+
+
+ + vim.notes.obsidian.setupOpts + + +
+
+

Option table to pass into the setup function of Obsidian.nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/obsidian/obsidian.nix> + +
+
+
+ + vim.notes.obsidian.setupOpts.completion.nvim_cmp + + +
+
+

If using nvim-cmp, otherwise set to false

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/obsidian/obsidian.nix> + +
+
+
+ + vim.notes.obsidian.setupOpts.daily_notes.date_format + + +
+
+

Date format used for creating daily notes

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/obsidian/obsidian.nix> + +
+
+
+ + vim.notes.obsidian.setupOpts.daily_notes.folder + + +
+
+

Directory in which daily notes should be created

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/obsidian/obsidian.nix> + +
+
+
+ + vim.notes.obsidian.setupOpts.dir + + +
+
+

Obsidian vault directory

+ +

Type: +string

+ +

Default: +"~/my-vault"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/obsidian/obsidian.nix> + +
+
+
+ + vim.notes.orgmode.enable + + +
+
+

Whether to enable nvim-orgmode: Neovim plugin for Emacs Orgmode. Get the best of both worlds.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/orgmode/orgmode.nix> + +
+
+
+ + vim.notes.orgmode.setupOpts + + +
+
+

Option table to pass into the setup function of Orgmode

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/orgmode/orgmode.nix> + +
+
+
+ + vim.notes.orgmode.setupOpts.org_agenda_files + + +
+
+

List of org files to be used as agenda files.

+ +

Type: +list of string

+ +

Default:

[
+  "~/Documents/org/*"
+  "~/my-orgs/**/*"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/orgmode/orgmode.nix> + +
+
+
+ + vim.notes.orgmode.setupOpts.org_default_notes_file + + +
+
+

Default org file to be used for notes.

+ +

Type: +string

+ +

Default: +"~/Documents/org/refile.org"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/orgmode/orgmode.nix> + +
+
+
+ + vim.notes.orgmode.treesitter.enable + + +
+
+

Whether to enable Orgmode treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/orgmode/orgmode.nix> + +
+
+
+ + vim.notes.orgmode.treesitter.orgPackage + + +
+
+

The org treesitter package to use.

+ +

Type: +package

+ +

Default: +pkgs.vimPlugins.nvim-treesitter.builtGrammars.org

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/orgmode/orgmode.nix> + +
+
+
+ + vim.notes.todo-comments.enable + + +
+
+

Whether to enable todo-comments: highlight and search for todo comments like TODO, HACK, BUG in your code base.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/todo-comments/todo-comments.nix> + +
+
+
+ + vim.notes.todo-comments.mappings.quickFix + + +
+
+

Open Todo-s in a quickfix list

+ +

Type: +null or string

+ +

Default: +"<leader>tdq"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/todo-comments/todo-comments.nix> + +
+
+
+ + vim.notes.todo-comments.mappings.telescope + + +
+
+

Open Todo-s in telescope

+ +

Type: +null or string

+ +

Default: +"<leader>tds"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/todo-comments/todo-comments.nix> + +
+
+
+ + vim.notes.todo-comments.mappings.trouble + + +
+
+

Open Todo-s in Trouble

+ +

Type: +null or string

+ +

Default: +"<leader>tdt"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/todo-comments/todo-comments.nix> + +
+
+
+ + vim.notes.todo-comments.setupOpts + + +
+
+

Option table to pass into the setup function of todo-comments.nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/todo-comments/todo-comments.nix> + +
+
+
+ + vim.notes.todo-comments.setupOpts.highlight.pattern + + +
+
+

vim regex pattern used for highlighting comments

+ +

Type: +string

+ +

Default: +".*<(KEYWORDS)(\\([^\\)]*\\))?:"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/todo-comments/todo-comments.nix> + +
+
+
+ + vim.notes.todo-comments.setupOpts.search.args + + +
+
+

arguments to pass to the search command

+ +

Type: +list of string

+ +

Default:

[
+  "--color=never"
+  "--no-heading"
+  "--with-filename"
+  "--line-number"
+  "--column"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/todo-comments/todo-comments.nix> + +
+
+
+ + vim.notes.todo-comments.setupOpts.search.command + + +
+
+

search command

+ +

Type: +string

+ +

Default: +"\${pkgs.ripgrep}/bin/rg"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/todo-comments/todo-comments.nix> + +
+
+
+ + vim.notes.todo-comments.setupOpts.search.pattern + + +
+
+

ripgrep regex pattern used for searching comments

+ +

Type: +string

+ +

Default: +"\\b(KEYWORDS)(\\([^\\)]*\\))?:"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/notes/todo-comments/todo-comments.nix> + +
+
+
+ + vim.notify.nvim-notify.enable + + +
+
+

Whether to enable nvim-notify notifications.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/notifications/nvim-notify/nvim-notify.nix> + +
+
+
+ + vim.notify.nvim-notify.setupOpts + + +
+
+

Option table to pass into the setup function of nvim-notify

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/notifications/nvim-notify/nvim-notify.nix> + +
+
+
+ + vim.notify.nvim-notify.setupOpts.background_colour + + +
+
+

The background colour of the notification

+ +

Type: +string

+ +

Default: +"#000000"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/notifications/nvim-notify/nvim-notify.nix> + +
+
+
+ + vim.notify.nvim-notify.setupOpts.icons + + +
+
+

The icons of the notification

+ +

Type: +attribute set of string

+ +

Default:

{
+  DEBUG = "";
+  ERROR = "";
+  INFO = "";
+  TRACE = "";
+  WARN = "";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/notifications/nvim-notify/nvim-notify.nix> + +
+
+
+ + vim.notify.nvim-notify.setupOpts.position + + +
+
+

The position of the notification

+ +

Type: +one of “top_left”, “top_right”, “bottom_left”, “bottom_right”

+ +

Default: +"top_right"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/notifications/nvim-notify/nvim-notify.nix> + +
+
+
+ + vim.notify.nvim-notify.setupOpts.render + + +
+
+

Custom rendering method to be used for displaying notifications

+ +

Type: +one of “default”, “minimal”, “simple”, “compact”, “wrapped-compact” or (luaInline)

+ +

Default: +"compact"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/notifications/nvim-notify/nvim-notify.nix> + +
+
+
+ + vim.notify.nvim-notify.setupOpts.stages + + +
+
+

The stages of the notification

+ +

Type: +one of “fade_in_slide_out”, “fade_in”, “slide_out”, “none”

+ +

Default: +"fade_in_slide_out"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/notifications/nvim-notify/nvim-notify.nix> + +
+
+
+ + vim.notify.nvim-notify.setupOpts.timeout + + +
+
+

The timeout of the notification

+ +

Type: +signed integer

+ +

Default: +1000

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/notifications/nvim-notify/nvim-notify.nix> + +
+
+
+ + vim.optPlugins + + +
+
+

List of plugins to optionally load on startup.

This option has the same type definition as vim.startPlugins +and plugins in this list are appended to vim.startPlugins by +the wrapper during the build process.

To avoid overriding packages and dependencies provided by startPlugins, you +are recommended to use this option or vim.extraPlugins option.

+ +

Type: +list of (null or package or one of “alpha-nvim”, “base16”, “bufdelete-nvim”, “catppuccin”, “ccc”, “cellular-automaton”, “chatgpt”, “cheatsheet-nvim”, “cinnamon-nvim”, “cmp-buffer”, “cmp-luasnip”, “cmp-nvim-lsp”, “cmp-path”, “cmp-treesitter”, “codewindow-nvim”, “comment-nvim”, “copilot-cmp”, “copilot-lua”, “crates-nvim”, “csharpls-extended”, “dashboard-nvim”, “diffview-nvim”, “dracula”, “dressing-nvim”, “elixir-tools”, “fastaction-nvim”, “fidget-nvim”, “flutter-tools”, “friendly-snippets”, “gesture-nvim”, “gitsigns-nvim”, “glow-nvim”, “gruvbox”, “highlight-undo”, “hop-nvim”, “icon-picker-nvim”, “image-nvim”, “indent-blankline”, “leap-nvim”, “lsp-lines”, “lsp-signature”, “lspkind”, “lspsaga”, “lua-utils-nvim”, “lualine”, “luasnip”, “lz-n”, “lzn-auto-require”, “mind-nvim”, “minimap-vim”, “modes-nvim”, “neo-tree-nvim”, “neocord”, “neodev-nvim”, “neorg”, “neorg-telescope”, “new-file-template-nvim”, “noice-nvim”, “none-ls”, “nui-nvim”, “nvim-autopairs”, “nvim-bufferline-lua”, “nvim-cmp”, “nvim-colorizer-lua”, “nvim-cursorline”, “nvim-dap”, “nvim-dap-go”, “nvim-dap-ui”, “nvim-docs-view”, “nvim-lightbulb”, “nvim-lspconfig”, “nvim-metals”, “nvim-navbuddy”, “nvim-navic”, “nvim-neoclip”, “nvim-nio”, “nvim-notify”, “nvim-scrollbar”, “nvim-session-manager”, “nvim-surround”, “nvim-tree-lua”, “nvim-treesitter-context”, “nvim-ts-autotag”, “nvim-web-devicons”, “obsidian-nvim”, “omnisharp-extended”, “onedark”, “orgmode-nvim”, “otter-nvim”, “oxocarbon”, “pathlib-nvim”, “plenary-nvim”, “precognition-nvim”, “project-nvim”, “registers”, “rose-pine”, “rtp-nvim”, “run-nvim”, “rustaceanvim”, “smartcolumn”, “sqls-nvim”, “tabular”, “telescope”, “tiny-devicons-auto-colors”, “todo-comments”, “toggleterm-nvim”, “tokyonight”, “trouble”, “ts-error-translator”, “typst-preview-nvim”, “vim-dirtytalk”, “vim-fugitive”, “vim-illuminate”, “vim-markdown”, “vim-repeat”, “vim-startify”, “which-key”, “nvim-treesitter”, “flutter-tools-patched”, “vim-repeat”)

+ +

Default: +[ ]

+ +

Example:

''
+  [pkgs.vimPlugins.vim-ghost]
+''
+
+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/build/options.nix> + +
+
+
+ + vim.options + + +
+
+

An attribute set containing vim options to be set +as early as possible. If populated, this option will +set vim options in the built luaConfigRC after basic +and before pluginConfigs DAG entries.

Note

{foo = "bar";} will set vim.o.foo to “bar”, where +the type of bar in the resulting Lua value will be +inferred from the type of the value in the{name = value;} +pair passed to the option.

+ +

Type: +attribute set of anything

+ +

Default: +{ }

+ +

Example:

{
+  visualbell = true;
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.options.autoindent + + +
+
+

Enable auto indent

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.options.cmdheight + + +
+
+

Height of the command pane

+ +

Type: +signed integer

+ +

Default: +1

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.options.cursorlineopt + + +
+
+

Highlight the text line of the cursor with CursorLine hl-CursorLine

+ +

Type: +one of “line”, “screenline”, “number”, “both”

+ +

Default: +"line"

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.options.mouse + + +
+
+

Set modes for mouse support.

  • a - all

  • n - normal

  • v - visual

  • i - insert

  • c - command

+ +

Type: +one of “a”, “n”, “v”, “i”, “c”

+ +

Default: +"a"

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.options.splitbelow + + +
+
+

New splits will open below instead of on top

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.options.splitright + + +
+
+

New splits will open to the right

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.options.termguicolors + + +
+
+

Set terminal up for 256 colours

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.options.tm + + +
+
+

Timeout in ms that Neovim will wait for mapped action to complete

+ +

Type: +signed integer

+ +

Default: +500

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.options.updatetime + + +
+
+

The number of milliseconds till Cursor Hold event is fired

+ +

Type: +signed integer

+ +

Default: +300

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.options.wrap + + +
+
+

Enable word wrapping.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.pluginRC + + +
+
+

The DAG used to configure plugins. If a string is passed, entryAnywhere is automatically applied.

+ +

Type: +(DAG of strings concatenated with “\n”) or string

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/rc/options.nix> + +
+
+
+ + vim.presence.neocord.enable + + +
+
+

Whether to enable neocord plugin for discord rich presence.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts + + +
+
+

Option table to pass into the setup function of neocord

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.enable_line_number + + +
+
+

Show line number on the RPC item

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.auto_update + + +
+
+

Automatically update the presence

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.blacklist + + +
+
+

List of filetypes to ignore

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example: +["Alpha"]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.client_id + + +
+
+

Client ID of the application

+ +

Type: +string

+ +

Default: +"1157438221865717891"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.debounce_timeout + + +
+
+

Number of seconds to debounce events

+ +

Type: +signed integer

+ +

Default: +10

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.editing_text + + +
+
+

Text displayed when editing a file

+ +

Type: +string

+ +

Default: +"Editing %s"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.file_explorer_text + + +
+
+

Text displayed when browsing files

+ +

Type: +string

+ +

Default: +"Browsing %s"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.git_commit_text + + +
+
+

Text displayed when committing changes

+ +

Type: +string

+ +

Default: +"Committing changes"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.line_number_text + + +
+
+

Text displayed when showing line number

+ +

Type: +string

+ +

Default: +"Line %s out of %s"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.log_level + + +
+
+

Log level to be used by the plugin

+ +

Type: +null or one of “debug”, “info”, “warn”, “error”

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.logo + + +
+
+

Logo to be displayed on the RPC item

This must be either “auto” or an URL to your image of choice

+ +

Type: +string

+ +

Default: +"auto"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.logo_tooltip + + +
+
+

Text displayed when hovering over the Neovim image

+ +

Type: +string

+ +

Default: +"The One True Text Editor"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.main_image + + +
+
+

Main image to be displayed

+ +

Type: +one of “language”, “logo”

+ +

Default: +"language"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.plugin_manager_text + + +
+
+

Text displayed when managing plugins

+ +

Type: +string

+ +

Default: +"Managing plugins"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.reading_text + + +
+
+

Text displayed when reading a file

+ +

Type: +string

+ +

Default: +"Reading %s"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.show_time + + +
+
+

Show time on the RPC item

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.terminal_text + + +
+
+

Text displayed when working on the terminal

+ +

Type: +string

+ +

Default: +"Working on the terminal"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.presence.neocord.setupOpts.workspace_text + + +
+
+

Text displayed when working on a project

+ +

Type: +string

+ +

Default: +"Working on %s"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/rich-presence/neocord/neocord.nix> + +
+
+
+ + vim.preventJunkFiles + + +
+
+

Prevent swapfile and backupfile from being created

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/basic.nix> + +
+
+
+ + vim.projects.project-nvim.enable + + +
+
+

Whether to enable project-nvim for project management.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/projects/project-nvim/project-nvim.nix> + +
+
+
+ + vim.projects.project-nvim.setupOpts + + +
+
+

Option table to pass into the setup function of Project.nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/projects/project-nvim/project-nvim.nix> + +
+
+
+ + vim.projects.project-nvim.setupOpts.detection_methods + + +
+
+

Detection methods to use

+ +

Type: +list of string

+ +

Default:

[
+  "lsp"
+  "pattern"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/projects/project-nvim/project-nvim.nix> + +
+
+
+ + vim.projects.project-nvim.setupOpts.exclude_dirs + + +
+
+

Directories to exclude from project root search

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/projects/project-nvim/project-nvim.nix> + +
+
+
+ + vim.projects.project-nvim.setupOpts.lsp_ignored + + +
+
+

LSP servers no ignore by name

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/projects/project-nvim/project-nvim.nix> + +
+
+
+ + vim.projects.project-nvim.setupOpts.manual_mode + + +
+
+

don’t automatically change the root directory so the user has the option to manually do so using :ProjectRoot command

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/projects/project-nvim/project-nvim.nix> + +
+
+
+ + vim.projects.project-nvim.setupOpts.patterns + + +
+
+

Patterns to use for pattern detection method

+ +

Type: +list of string

+ +

Default:

[
+  ".git"
+  "_darcs"
+  ".hg"
+  ".bzr"
+  ".svn"
+  "Makefile"
+  "package.json"
+  "flake.nix"
+  "cargo.toml"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/projects/project-nvim/project-nvim.nix> + +
+
+
+ + vim.projects.project-nvim.setupOpts.scope_chdir + + +
+
+

What scope to change the directory

+ +

Type: +one of “global”, “tab”, “win”

+ +

Default: +"global"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/projects/project-nvim/project-nvim.nix> + +
+
+
+ + vim.projects.project-nvim.setupOpts.show_hidden + + +
+
+

Show hidden files in telescope picker

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/projects/project-nvim/project-nvim.nix> + +
+
+
+ + vim.projects.project-nvim.setupOpts.silent_chdir + + +
+
+

Silently change directory when changing project

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/projects/project-nvim/project-nvim.nix> + +
+
+
+ + vim.python3Packages + + +
+
+

List of python packages to install

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Example: +"[\"pynvim\"]"

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/build/options.nix> + +
+
+
+ + vim.runner.run-nvim.enable + + +
+
+

Whether to enable run.nvim.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/runner/run-nvim/run-nvim.nix> + +
+
+
+ + vim.runner.run-nvim.mappings.run + + +
+
+

Run cached

+ +

Type: +null or string

+ +

Default: +"<leader>ri"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/runner/run-nvim/run-nvim.nix> + +
+
+
+ + vim.runner.run-nvim.mappings.runCommand + + +
+
+

Run prompt

+ +

Type: +null or string

+ +

Default: +"<leader>rc"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/runner/run-nvim/run-nvim.nix> + +
+
+
+ + vim.runner.run-nvim.mappings.runOverride + + +
+
+

Run and override

+ +

Type: +null or string

+ +

Default: +"<leader>ro"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/runner/run-nvim/run-nvim.nix> + +
+
+
+ + vim.runner.run-nvim.setupOpts + + +
+
+

Option table to pass into the setup function of run.nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/runner/run-nvim/run-nvim.nix> + +
+
+
+ + vim.scrollOffset + + +
+
+

Start scrolling this number of lines from the top or bottom of the page.

+ +

Type: +signed integer

+ +

Default: +8

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/basic.nix> + +
+
+
+ + vim.searchCase + + +
+
+

Set the case sensitivity of search

+ +

Type: +one of “ignore”, “smart”, “sensitive”

+ +

Default: +"sensitive"

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/basic.nix> + +
+
+
+ + vim.session.nvim-session-manager.enable + + +
+
+

Whether to enable nvim-session-manager: manage sessions like folders in VSCode.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.session.nvim-session-manager.mappings.deleteSession + + +
+
+

Delete session

+ +

Type: +null or string

+ +

Default: +"<leader>sd"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.session.nvim-session-manager.mappings.loadLastSession + + +
+
+

Load last session

+ +

Type: +null or string

+ +

Default: +"<leader>slt"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.session.nvim-session-manager.mappings.loadSession + + +
+
+

Load session

+ +

Type: +null or string

+ +

Default: +"<leader>sl"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.session.nvim-session-manager.mappings.saveCurrentSession + + +
+
+

Save current session

+ +

Type: +null or string

+ +

Default: +"<leader>sc"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.session.nvim-session-manager.setupOpts.autoload_mode + + +
+
+

Define what to do when Neovim is started without arguments. Possible values: Disabled, CurrentDir, LastSession

+ +

Type: +one of “Disabled”, “CurrentDir”, “LastSession”

+ +

Default: +"LastSession"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.session.nvim-session-manager.setupOpts.autosave_ignore_buftypes + + +
+
+

All buffers of these buffer types will be closed before the session is saved

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.session.nvim-session-manager.setupOpts.autosave_ignore_dirs + + +
+
+

A list of directories where the session will not be autosaved

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.session.nvim-session-manager.setupOpts.autosave_ignore_filetypes + + +
+
+

All buffers of these file types will be closed before the session is saved

+ +

Type: +list of string

+ +

Default:

[
+  "gitcommit"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.session.nvim-session-manager.setupOpts.autosave_ignore_not_normal + + +
+
+

Plugin will not save a session when no buffers are opened, or all of them aren’t writable or listed

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.session.nvim-session-manager.setupOpts.autosave_last_session + + +
+
+

Automatically save last session on exit and on session switch

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.session.nvim-session-manager.setupOpts.autosave_only_in_session + + +
+
+

Always autosaves session. If true, only autosaves after a session is active

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.session.nvim-session-manager.setupOpts.colon_replacer + + +
+
+

The character to which the colon symbol will be replaced for session files

+ +

Type: +string

+ +

Default: +"++"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.session.nvim-session-manager.setupOpts.max_path_length + + +
+
+

Shorten the display path if length exceeds this threshold. Use 0 if don’t want to shorten the path at all

+ +

Type: +null or signed integer

+ +

Default: +80

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.session.nvim-session-manager.setupOpts.path_replacer + + +
+
+

The character to which the path separator will be replaced for session files

+ +

Type: +string

+ +

Default: +"__"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.session.nvim-session-manager.usePicker + + +
+
+

Whether or not we should use dressing.nvim to build a session picker UI

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/session/nvim-session-manager/nvim-session-manager.nix> + +
+
+
+ + vim.showSignColumn + + +
+
+

Show the sign column

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/basic.nix> + +
+
+
+ + vim.snippets.luasnip.enable + + +
+
+

Whether to enable luasnip.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/snippets/luasnip/luasnip.nix> + +
+
+
+ + vim.snippets.luasnip.loaders + + +
+
+

Lua code used to load snippet providers.

+ +

Type: +strings concatenated with “\n”

+ +

Default:

require('luasnip.loaders.from_vscode').lazy_load()
+
+ +

Example:

require("luasnip.loaders.from_snipmate").lazy_load()
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/snippets/luasnip/luasnip.nix> + +
+
+
+ + vim.snippets.luasnip.providers + + +
+
+

The snippet provider packages.

Note

These are simply appended to {option} vim.startPlugins.

+ +

Type: +list of (null or package or one of “alpha-nvim”, “base16”, “bufdelete-nvim”, “catppuccin”, “ccc”, “cellular-automaton”, “chatgpt”, “cheatsheet-nvim”, “cinnamon-nvim”, “cmp-buffer”, “cmp-luasnip”, “cmp-nvim-lsp”, “cmp-path”, “cmp-treesitter”, “codewindow-nvim”, “comment-nvim”, “copilot-cmp”, “copilot-lua”, “crates-nvim”, “csharpls-extended”, “dashboard-nvim”, “diffview-nvim”, “dracula”, “dressing-nvim”, “elixir-tools”, “fastaction-nvim”, “fidget-nvim”, “flutter-tools”, “friendly-snippets”, “gesture-nvim”, “gitsigns-nvim”, “glow-nvim”, “gruvbox”, “highlight-undo”, “hop-nvim”, “icon-picker-nvim”, “image-nvim”, “indent-blankline”, “leap-nvim”, “lsp-lines”, “lsp-signature”, “lspkind”, “lspsaga”, “lua-utils-nvim”, “lualine”, “luasnip”, “lz-n”, “lzn-auto-require”, “mind-nvim”, “minimap-vim”, “modes-nvim”, “neo-tree-nvim”, “neocord”, “neodev-nvim”, “neorg”, “neorg-telescope”, “new-file-template-nvim”, “noice-nvim”, “none-ls”, “nui-nvim”, “nvim-autopairs”, “nvim-bufferline-lua”, “nvim-cmp”, “nvim-colorizer-lua”, “nvim-cursorline”, “nvim-dap”, “nvim-dap-go”, “nvim-dap-ui”, “nvim-docs-view”, “nvim-lightbulb”, “nvim-lspconfig”, “nvim-metals”, “nvim-navbuddy”, “nvim-navic”, “nvim-neoclip”, “nvim-nio”, “nvim-notify”, “nvim-scrollbar”, “nvim-session-manager”, “nvim-surround”, “nvim-tree-lua”, “nvim-treesitter-context”, “nvim-ts-autotag”, “nvim-web-devicons”, “obsidian-nvim”, “omnisharp-extended”, “onedark”, “orgmode-nvim”, “otter-nvim”, “oxocarbon”, “pathlib-nvim”, “plenary-nvim”, “precognition-nvim”, “project-nvim”, “registers”, “rose-pine”, “rtp-nvim”, “run-nvim”, “rustaceanvim”, “smartcolumn”, “sqls-nvim”, “tabular”, “telescope”, “tiny-devicons-auto-colors”, “todo-comments”, “toggleterm-nvim”, “tokyonight”, “trouble”, “ts-error-translator”, “typst-preview-nvim”, “vim-dirtytalk”, “vim-fugitive”, “vim-illuminate”, “vim-markdown”, “vim-repeat”, “vim-startify”, “which-key”, “nvim-treesitter”, “flutter-tools-patched”, “vim-repeat”)

+ +

Default:

[
+  "friendly-snippets"
+]
+
+ +

Example: +["vimPlugins.vim-snippets"]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/snippets/luasnip/luasnip.nix> + +
+
+
+ + vim.spellcheck.enable + + +
+
+

Whether to enable Neovim’s built-in spellchecking.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/spellcheck.nix> + +
+
+
+ + vim.spellcheck.extraSpellWords + + +
+
+

Additional words to be used for spellchecking. The names of each key will be +used as the language code for the spell file. For example

"en.utf-8" = [ ... ];
+

will result in en.utf-8.add.spl being added to Neovim’s runtime in the +spell directory.

Warning

The attribute keys must be in "<name>.<encoding>" format for Neovim to +compile your spellfiles without mangling the resulting file names. Please +make sure that you enter the correct value, as nvf does not do any kind of +internal checking. Please see :help mkspell for more details.

Example:

# "en" is the name, and "utf-8" is the encoding. For most use cases, utf-8
+# will be enough, however, you may change it to any encoding format Neovim
+# accepts, e.g., utf-16.
+"en.utf-8" = ["nvf" "word_you_want_to_add"];
+=> $out/spell/en-utf-8.add.spl
+

Note that while adding a new language, you will still need to add the name of +the language (e.g. “en”) to the vim.spellcheck.languages list by name +in order to enable spellchecking for the language. By default only "en" is in +the list.

+ +

Type: +attribute set of list of string

+ +

Default: +{ }

+ +

Example: +{"en.utf-8" = ["nvf" "word_you_want_to_add"];}

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/spellcheck.nix> + +
+
+
+ + vim.spellcheck.ignoredFiletypes + + +
+
+

A list of filetypes for which spellchecking will be disabled.

Tip

You may use :echo &filetype in Neovim to find out the +filetype for a specific buffer.

+ +

Type: +list of string

+ +

Default:

[
+  "toggleterm"
+]
+
+ +

Example: +["markdown" "gitcommit"]

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/spellcheck.nix> + +
+
+
+ + vim.spellcheck.languages + + +
+
+

A list of languages that should be used for spellchecking.

To add your own language files, you may place your spell directory in either +$XDG_CONFIG_HOME/nvf or in a path that is included in the +additionalRuntimePaths list provided by nvf.

+ +

Type: +list of string

+ +

Default:

[
+  "en"
+]
+
+ +

Example: +["en" "de"]

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/spellcheck.nix> + +
+
+
+ + vim.spellcheck.programmingWordlist.enable + + +
+
+

Whether to enable vim-dirtytalk, a wordlist for programmers containing +common programming terms.

Note

Enabling this option will unconditionally set +vim.spellcheck.enable to true as vim-dirtytalk +depends on spellchecking having been set up.

.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/spellcheck.nix> + +
+
+
+ + vim.startPlugins + + +
+
+

List of plugins to load on startup. This is used +internally to add plugins to Neovim’s runtime.

To add additional plugins to your configuration, consider +using the vim.extraPlugins +option.

+ +

Type: +list of (null or package or one of “alpha-nvim”, “base16”, “bufdelete-nvim”, “catppuccin”, “ccc”, “cellular-automaton”, “chatgpt”, “cheatsheet-nvim”, “cinnamon-nvim”, “cmp-buffer”, “cmp-luasnip”, “cmp-nvim-lsp”, “cmp-path”, “cmp-treesitter”, “codewindow-nvim”, “comment-nvim”, “copilot-cmp”, “copilot-lua”, “crates-nvim”, “csharpls-extended”, “dashboard-nvim”, “diffview-nvim”, “dracula”, “dressing-nvim”, “elixir-tools”, “fastaction-nvim”, “fidget-nvim”, “flutter-tools”, “friendly-snippets”, “gesture-nvim”, “gitsigns-nvim”, “glow-nvim”, “gruvbox”, “highlight-undo”, “hop-nvim”, “icon-picker-nvim”, “image-nvim”, “indent-blankline”, “leap-nvim”, “lsp-lines”, “lsp-signature”, “lspkind”, “lspsaga”, “lua-utils-nvim”, “lualine”, “luasnip”, “lz-n”, “lzn-auto-require”, “mind-nvim”, “minimap-vim”, “modes-nvim”, “neo-tree-nvim”, “neocord”, “neodev-nvim”, “neorg”, “neorg-telescope”, “new-file-template-nvim”, “noice-nvim”, “none-ls”, “nui-nvim”, “nvim-autopairs”, “nvim-bufferline-lua”, “nvim-cmp”, “nvim-colorizer-lua”, “nvim-cursorline”, “nvim-dap”, “nvim-dap-go”, “nvim-dap-ui”, “nvim-docs-view”, “nvim-lightbulb”, “nvim-lspconfig”, “nvim-metals”, “nvim-navbuddy”, “nvim-navic”, “nvim-neoclip”, “nvim-nio”, “nvim-notify”, “nvim-scrollbar”, “nvim-session-manager”, “nvim-surround”, “nvim-tree-lua”, “nvim-treesitter-context”, “nvim-ts-autotag”, “nvim-web-devicons”, “obsidian-nvim”, “omnisharp-extended”, “onedark”, “orgmode-nvim”, “otter-nvim”, “oxocarbon”, “pathlib-nvim”, “plenary-nvim”, “precognition-nvim”, “project-nvim”, “registers”, “rose-pine”, “rtp-nvim”, “run-nvim”, “rustaceanvim”, “smartcolumn”, “sqls-nvim”, “tabular”, “telescope”, “tiny-devicons-auto-colors”, “todo-comments”, “toggleterm-nvim”, “tokyonight”, “trouble”, “ts-error-translator”, “typst-preview-nvim”, “vim-dirtytalk”, “vim-fugitive”, “vim-illuminate”, “vim-markdown”, “vim-repeat”, “vim-startify”, “which-key”, “nvim-treesitter”, “flutter-tools-patched”, “vim-repeat”)

+ +

Default:

[
+  "plenary-nvim"
+]
+
+ +

Example:

''
+  [pkgs.vimPlugins.telescope-nvim]
+''
+
+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/build/options.nix> + +
+
+
+ + vim.statusline.lualine.enable + + +
+
+

Whether to enable lualine statusline plugin.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.activeSection.a + + +
+
+

active config for: | (A) | B | C X | Y | Z |

+ +

Type: +list of string

+ +

Default:

[
+  ''
+    {
+      "mode",
+      icons_enabled = true,
+      separator = {
+        left = '▎',
+        right = ''
+      },
+    }
+  ''
+  ''
+    {
+      "",
+      draw_empty = true,
+      separator = { left = '', right = '' }
+    }
+  ''
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.activeSection.b + + +
+
+

active config for: | A | (B) | C X | Y | Z |

+ +

Type: +list of string

+ +

Default:

[
+  ''
+    {
+      "filetype",
+      colored = true,
+      icon_only = true,
+      icon = { align = 'left' }
+    }
+  ''
+  ''
+    {
+      "filename",
+      symbols = {modified = ' ', readonly = ' '},
+      separator = {right = ''}
+    }
+  ''
+  ''
+    {
+      "",
+      draw_empty = true,
+      separator = { left = '', right = '' }
+    }
+  ''
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.activeSection.c + + +
+
+

active config for: | A | B | © X | Y | Z |

+ +

Type: +list of string

+ +

Default:

[
+  ''
+    {
+      "diff",
+      colored = false,
+      diff_color = {
+        -- Same color values as the general color option can be used here.
+        added    = 'DiffAdd',    -- Changes the diff's added color
+        modified = 'DiffChange', -- Changes the diff's modified color
+        removed  = 'DiffDelete', -- Changes the diff's removed color you
+      },
+      symbols = {added = '+', modified = '~', removed = '-'}, -- Changes the diff symbols
+      separator = {right = ''}
+    }
+  ''
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.activeSection.x + + +
+
+

active config for: | A | B | C (X) | Y | Z |

+ +

Type: +list of string

+ +

Default:

[
+  ''
+    {
+      -- Lsp server name
+      function()
+        local buf_ft = vim.api.nvim_get_option_value('filetype', {})
+    
+        -- List of buffer types to exclude
+        local excluded_buf_ft = {"toggleterm", "NvimTree", "neo-tree", "TelescopePrompt"}
+    
+        -- Check if the current buffer type is in the excluded list
+        for _, excluded_type in ipairs(excluded_buf_ft) do
+          if buf_ft == excluded_type then
+            return ""
+          end
+        end
+    
+        -- Get the name of the LSP server active in the current buffer
+        local clients = vim.lsp.get_active_clients()
+        local msg = 'No Active Lsp'
+    
+        -- if no lsp client is attached then return the msg
+        if next(clients) == nil then
+          return msg
+        end
+    
+        for _, client in ipairs(clients) do
+          local filetypes = client.config.filetypes
+          if filetypes and vim.fn.index(filetypes, buf_ft) ~= -1 then
+            return client.name
+          end
+        end
+    
+        return msg
+      end,
+      icon = ' ',
+      separator = {left = ''},
+    }
+  ''
+  ''
+    {
+      "diagnostics",
+      sources = {'nvim_lsp', 'nvim_diagnostic', 'nvim_diagnostic', 'vim_lsp', 'coc'},
+      symbols = {error = '󰅙  ', warn = '  ', info = '  ', hint = '󰌵 '},
+      colored = true,
+      update_in_insert = false,
+      always_visible = false,
+      diagnostics_color = {
+        color_error = { fg = 'red' },
+        color_warn = { fg = 'yellow' },
+        color_info = { fg = 'cyan' },
+      },
+    }
+  ''
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.activeSection.y + + +
+
+

active config for: | A | B | C X | (Y) | Z |

+ +

Type: +list of string

+ +

Default:

[
+  ''
+    {
+      "",
+      draw_empty = true,
+      separator = { left = '', right = '' }
+    }
+  ''
+  ''
+    {
+      'searchcount',
+      maxcount = 999,
+      timeout = 120,
+      separator = {left = ''}
+    }
+  ''
+  ''
+    {
+      "branch",
+      icon = ' •',
+      separator = {left = ''}
+    }
+  ''
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.activeSection.z + + +
+
+

active config for: | A | B | C X | Y | (Z) |

+ +

Type: +list of string

+ +

Default:

[
+  ''
+    {
+      "",
+      draw_empty = true,
+      separator = { left = '', right = '' }
+    }
+  ''
+  ''
+    {
+      "progress",
+      separator = {left = ''}
+    }
+  ''
+  ''
+    {"location"}
+  ''
+  ''
+    {
+      "fileformat",
+      color = {fg='black'},
+      symbols = {
+        unix = '', -- e712
+        dos = '',  -- e70f
+        mac = '',  -- e711
+      }
+    }
+  ''
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.alwaysDivideMiddle + + +
+
+

Always divide middle section

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.componentSeparator.left + + +
+
+

Component separator for left side

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.componentSeparator.right + + +
+
+

Component separator for right side

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.disabledFiletypes + + +
+
+

Filetypes to disable lualine on

+ +

Type: +list of string

+ +

Default:

[
+  "alpha"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.extraActiveSection.a + + +
+
+

Extra entries for activeSection.a

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.extraActiveSection.b + + +
+
+

Extra entries for activeSection.b

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.extraActiveSection.c + + +
+
+

Extra entries for activeSection.c

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.extraActiveSection.x + + +
+
+

Extra entries for activeSection.x

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.extraActiveSection.y + + +
+
+

Extra entries for activeSection.y

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.extraActiveSection.z + + +
+
+

Extra entries for activeSection.z

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.extraInactiveSection.a + + +
+
+

Extra entries for inactiveSection.a

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.extraInactiveSection.b + + +
+
+

Extra entries for inactiveSection.b

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.extraInactiveSection.c + + +
+
+

Extra entries for inactiveSection.c

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.extraInactiveSection.x + + +
+
+

Extra entries for inactiveSection.x

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.extraInactiveSection.y + + +
+
+

Extra entries for inactiveSection.y

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.extraInactiveSection.z + + +
+
+

Extra entries for inactiveSection.z

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.globalStatus + + +
+
+

Enable global status for lualine

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.icons.enable + + +
+
+

Whether to enable icons for lualine.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.ignoreFocus + + +
+
+

If current filetype is in this list it’ll always be drawn as inactive statusline +and the last window will be drawn as active statusline.

+ +

Type: +list of string

+ +

Default:

[
+  "NvimTree"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.inactiveSection.a + + +
+
+

inactive config for: | (A) | B | C X | Y | Z |

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.inactiveSection.b + + +
+
+

inactive config for: | A | (B) | C X | Y | Z |

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.inactiveSection.c + + +
+
+

inactive config for: | A | B | © X | Y | Z |

+ +

Type: +list of string

+ +

Default:

[
+  "'filename'"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.inactiveSection.x + + +
+
+

inactive config for: | A | B | C (X) | Y | Z |

+ +

Type: +list of string

+ +

Default:

[
+  "'location'"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.inactiveSection.y + + +
+
+

inactive config for: | A | B | C X | (Y) | Z |

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.inactiveSection.z + + +
+
+

inactive config for: | A | B | C X | Y | (Z) |

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.refresh.statusline + + +
+
+

Refresh rate for lualine

+ +

Type: +signed integer

+ +

Default: +1000

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.refresh.tabline + + +
+
+

Refresh rate for tabline

+ +

Type: +signed integer

+ +

Default: +1000

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.refresh.winbar + + +
+
+

Refresh rate for winbar

+ +

Type: +signed integer

+ +

Default: +1000

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.sectionSeparator.left + + +
+
+

Section separator for left side

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.sectionSeparator.right + + +
+
+

Section separator for right side

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.setupOpts + + +
+
+

Option table to pass into the setup function of Lualine

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.statusline.lualine.theme + + +
+
+

Theme for lualine

+ +

Type: +one of “auto”, “16color”, “ayu_dark”, “ayu_light”, “ayu_mirage”, “ayu”, “base16”, “codedark”, “dracula”, “everforest”, “gruvbox”, “gruvbox_dark”, “gruvbox_light”, “gruvbox-material”, “horizon”, “iceberg_dark”, “iceberg_light”, “iceberg”, “jellybeans”, “material”, “modus-vivendi”, “molokai”, “moonfly”, “nightfly”, “nord”, “OceanicNext”, “onedark”, “onelight”, “palenight”, “papercolor_dark”, “papercolor_light”, “PaperColor”, “powerline_dark”, “powerline”, “pywal”, “seoul256”, “solarized_dark”, “solarized_light”, “Tomorrow”, “wombat”, “onedark”

+ +

Default: +"`config.vim.theme.name` if theme supports lualine else \"auto\""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/statusline/lualine/lualine.nix> + +
+
+
+ + vim.syntaxHighlighting + + +
+
+

Enable syntax highlighting

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/basic.nix> + +
+
+
+ + vim.tabline.nvimBufferline.enable + + +
+
+

Whether to enable neovim bufferline.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.mappings.closeCurrent + + +
+
+

Close buffer

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.mappings.cycleNext + + +
+
+

Next buffer

+ +

Type: +null or string

+ +

Default: +"<leader>bn"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.mappings.cyclePrevious + + +
+
+

Previous buffer

+ +

Type: +null or string

+ +

Default: +"<leader>bp"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.mappings.moveNext + + +
+
+

Move next buffer

+ +

Type: +null or string

+ +

Default: +"<leader>bmn"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.mappings.movePrevious + + +
+
+

Move previous buffer

+ +

Type: +null or string

+ +

Default: +"<leader>bmp"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.mappings.pick + + +
+
+

Pick buffer

+ +

Type: +null or string

+ +

Default: +"<leader>bc"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.mappings.sortByDirectory + + +
+
+

Sort buffers by directory

+ +

Type: +null or string

+ +

Default: +"<leader>bsd"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.mappings.sortByExtension + + +
+
+

Sort buffers by extension

+ +

Type: +null or string

+ +

Default: +"<leader>bse"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.mappings.sortById + + +
+
+

Sort buffers by ID

+ +

Type: +null or string

+ +

Default: +"<leader>bsi"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts + + +
+
+

Option table to pass into the setup function of Bufferline-nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.highlights + + +
+
+

Overrides the highlight groups of bufferline.

See :help bufferline-highlights.

+ +

Type: +(attribute set) or (luaInline)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.always_show_bufferline + + +
+
+

Whether to always show bufferline

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.auto_toggle_bufferline + + +
+
+

Whether to auto toggle bufferline

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.buffer_close_icon + + +
+
+

Icon for close button

+ +

Type: +string

+ +

Default: +" 󰅖 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.close_command + + +
+
+

Command to run when closing a buffer

+ +

Type: +string or (luaInline)

+ +

Default:

{
+  _type = "lua-inline";
+  expr = ''
+    function(bufnum)
+      require("bufdelete").bufdelete(bufnum, false)
+    end
+  '';
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.close_icon + + +
+
+

Icon for close button

+ +

Type: +string

+ +

Default: +"  "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.color_icons + + +
+
+

Whether or not to add filetype icon highlights

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.custom_filter + + +
+
+

Custom filter function for filtering out buffers.

Note

This will be called a lot, so you are encouraged to keep it as +short and lightweight as possible unless you are fully aware +of the performance implications.

+ +

Type: +null or (luaInline)

+ +

Default: +null

+ +

Example:

custom_filter = function(buf_number, buf_numbers)
+  -- filter out filetypes you don't want to see
+  if vim.bo[buf_number].filetype ~= "<i-dont-want-to-see-this>" then
+    return true
+  end
+  -- filter out by buffer name
+  if vim.fn.bufname(buf_number) ~= "<buffer-name-I-dont-want>" then
+      return true
+  end
+  -- filter out based on arbitrary rules
+  -- e.g. filter out vim wiki buffer from tabline in your work repo
+  if vim.fn.getcwd() == "<work-repo>" and vim.bo[buf_number].filetype ~= "wiki" then
+      return true
+  end
+  -- filter out by it's index number in list (don't show first buffer)
+  if buf_numbers[1] ~= buf_number then
+      return true
+  end
+end
+
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.diagnostics + + +
+
+

Diagnostics provider to be used in buffer LSP indicators

+ +

Type: +one of false, “nvim_lsp”, “coc”

+ +

Default: +"nvim_lsp"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.diagnostics_indicator + + +
+
+

Function to get the diagnostics indicator. +The function should return a string to be used as the indicator.

Can be set to nil to keep the buffer name highlight, but delete the +highlighting.

+ +

Type: +null or (luaInline)

+ +

Default:

{
+  _type = "lua-inline";
+  expr = ''
+    function(count, level, diagnostics_dict, context)
+      local s = " "
+        for e, n in pairs(diagnostics_dict) do
+          local sym = e == "error" and "   "
+            or (e == "warning" and "   " or "  " )
+          s = s .. n .. sym
+        end
+      return s
+    end
+  '';
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.diagnostics_update_in_insert + + +
+
+

Whether to update diagnostics while in insert mode.

Setting this to true has performance implications, but they may be +negligible depending on your setup. Set it to true if you know what +you are doing.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.duplicates_across_groups + + +
+
+

Whether to consider duplicate paths in different groups as duplicates

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.enforce_regular_tabs + + +
+
+

Whether to enforce regular tabs

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.get_element_icon + + +
+
+

The function bufferline uses to get the icon. Recommended to leave as default.

+ +

Type: +null or (luaInline)

+ +

Default: +null

+ +

Example:

function(element)
+  local custom_map = {my_thing_ft: {icon = "my_thing_icon", hl = "DevIconDefault"}}
+  return custom_map[element.filetype]
+end
+
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.hover.enabled + + +
+
+

Whether to enable hover.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.hover.delay + + +
+
+

Delay for hover, in ms

+ +

Type: +signed integer

+ +

Default: +200

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.hover.reveal + + +
+
+

Reveal hover window

+ +

Type: +list of string

+ +

Default:

[
+  "close"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.indicator.icon + + +
+
+

The indicatotor icon to use for the current buffer.

Warning

This must be omitted while style is not icon

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.indicator.style + + +
+
+

Style for indicator

+ +

Type: +one of “icon”, “underline”, “none”

+ +

Default: +"underline"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.left_mouse_command + + +
+
+

Command to run when left clicking a buffer

+ +

Type: +null or string or (luaInline)

+ +

Default: +"buffer %d"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.left_trunc_marker + + +
+
+

Icon for left truncation

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.max_name_length + + +
+
+

Max name length

+ +

Type: +signed integer

+ +

Default: +18

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.max_prefix_length + + +
+
+

Length of the prefix used when a buffer is de-duplicated

+ +

Type: +signed integer

+ +

Default: +15

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.middle_mouse_command + + +
+
+

Command to run when middle clicking a buffer

+ +

Type: +null or string or (luaInline)

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.mode + + +
+
+

Mode to use for bufferline

+ +

Type: +one of “tabs”, “buffers”

+ +

Default: +"buffers"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.modified_icon + + +
+
+

Icon for modified buffer

+ +

Type: +string

+ +

Default: +"● "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.move_wraps_at_ends + + +
+
+

Whether or not the move command “wraps” at the first or last position

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.name_formatter + + +
+
+

name_formatter can be used to change the buffer’s label in the +bufferline.

Note

Some names can/will break the bufferline so use this at your +discretion knowing that it has some limitations that will +NOT be fixed.

+ +

Type: +null or (luaInline)

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.numbers + + +
+
+

Whether or not to show buffer numbers

+ +

Type: +one of “none”, “ordinal”, “buffer_id”, “both” or (luaInline)

+ +

Default:

{
+  _type = "lua-inline";
+  expr = ''
+    function(opts)
+      return string.format('%s·%s', opts.raise(opts.id), opts.lower(opts.ordinal))
+    end
+  '';
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.offsets + + +
+
+

The windows to offset bufferline above, see :help bufferline-offset

+ +

Type: +list of (attribute set)

+ +

Default:

[
+  {
+    filetype = "NvimTree";
+    highlight = "Directory";
+    separator = true;
+    text = "File Explorer";
+  }
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.persist_buffer_sort + + +
+
+

Whether or not custom sorted buffers should persist

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.right_mouse_command + + +
+
+

Command to run when right clicking a buffer

+ +

Type: +null or string or (luaInline)

+ +

Default: +"vertical sbuffer %d"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.right_trunc_marker + + +
+
+

Icon for right truncation

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.separator_style + + +
+
+

The type of separator used to separate buffers and tabs.

Either one of the listed types, or a list of 2 characters for either side.

+ +

Type: +null or one of “slant”, “padded_slant”, “slope”, “padded_slope”, “thick”, “thin” or list of string

+ +

Default: +"thin"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.show_buffer_close_icons + + +
+
+

Whether or not to show buffer close icons

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.show_buffer_icons + + +
+
+

Whether or not to show buffer icons

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.show_close_icon + + +
+
+

Whether or not to show the close icon

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.show_duplicate_prefix + + +
+
+

Whether or not to show duplicate buffer prefixes

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.show_tab_indicators + + +
+
+

Whether or not to show tab indicators

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.sort_by + + +
+
+

Method to sort buffers by. Must be one of the supported values, or an inline Lua value.

+ +

Type: +one of “insert_after_current”, “insert_at_end”, “id”, “extension”, “relative_directory”, “directory”, “tabs” or (luaInline)

+ +

Default: +"extension"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.style_preset + + +
+
+

The base style of bufferline

+ +

Type: +one of “default”, “minimal”, “no_bold”, “no_italic”

+ +

Default: +"default"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.tab_size + + +
+
+

The size of the tabs in bufferline

+ +

Type: +signed integer

+ +

Default: +18

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.themable + + +
+
+

Whether or not to allow highlight groups to be overridden.

While false, bufferline.nvim sets highlights as default.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.tabline.nvimBufferline.setupOpts.options.truncate_names + + +
+
+

Truncate names

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/tabline/nvim-bufferline/nvim-bufferline.nix> + +
+
+
+ + vim.telescope.enable + + +
+
+

Whether to enable telescope.nvim: multi-purpose search and picker utility.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.buffers + + +
+
+

Buffers [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>fb"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.diagnostics + + +
+
+

Diagnostics [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>fld"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.findFiles + + +
+
+

Find files [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>ff"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.findProjects + + +
+
+

Find projects [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>fp"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.gitBranches + + +
+
+

Git branches [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>fvb"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.gitBufferCommits + + +
+
+

Git buffer commits [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>fvcb"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.gitCommits + + +
+
+

Git commits [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>fvcw"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.gitStash + + +
+
+

Git stash [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>fvx"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.gitStatus + + +
+
+

Git status [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>fvs"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.helpTags + + +
+
+

Help tags [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>fh"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.liveGrep + + +
+
+

Live grep [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>fg"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.lspDefinitions + + +
+
+

LSP Definitions [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>flD"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.lspDocumentSymbols + + +
+
+

LSP Document Symbols [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>flsb"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.lspImplementations + + +
+
+

LSP Implementations [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>fli"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.lspReferences + + +
+
+

LSP References [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>flr"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.lspTypeDefinitions + + +
+
+

LSP Type Definitions [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>flt"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.lspWorkspaceSymbols + + +
+
+

LSP Workspace Symbols [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>flsw"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.open + + +
+
+

Open [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>ft"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.resume + + +
+
+

Resume (previous search) [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>fr"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.mappings.treesitter + + +
+
+

Treesitter [Telescope]

+ +

Type: +null or string

+ +

Default: +"<leader>fs"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts + + +
+
+

Option table to pass into the setup function of Telescope

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.color_devicons + + +
+
+

Boolean if devicons should be enabled or not.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.entry_prefix + + +
+
+

Prefix in front of each result entry. Current selection not included.

+ +

Type: +string

+ +

Default: +" "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.file_ignore_patterns + + +
+
+

A table of lua regex that define the files that should be ignored.

+ +

Type: +list of string

+ +

Default:

[
+  "node_modules"
+  ".git/"
+  "dist/"
+  "build/"
+  "target/"
+  "result/"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.initial_mode + + +
+
+

Determines in which mode telescope starts.

+ +

Type: +one of “insert”, “normal”

+ +

Default: +"insert"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.layout_config + + +
+
+

Determines the default configuration values for layout strategies. +See telescope.layout for details of the configurations options for +each strategy.

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.layout_config.height + + +
+
+

Type: +floating point number

+ +

Default: +0.8

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.layout_config.horizontal.preview_width + + +
+
+

Type: +floating point number

+ +

Default: +0.55

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.layout_config.horizontal.prompt_position + + +
+
+

Type: +string

+ +

Default: +"top"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.layout_config.horizontal.results_width + + +
+
+

Type: +floating point number

+ +

Default: +0.8

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.layout_config.preview_cutoff + + +
+
+

Type: +signed integer

+ +

Default: +120

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.layout_config.vertical.mirror + + +
+
+

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.layout_config.width + + +
+
+

Type: +floating point number

+ +

Default: +0.8

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.layout_strategy + + +
+
+

Determines the default layout of Telescope pickers. See :help telescope.layout.

+ +

Type: +string

+ +

Default: +"horizontal"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.path_display + + +
+
+

Determines how file paths are displayed.

+ +

Type: +list of (one of “hidden”, “tail”, “absolute”, “smart”, “shorten”, “truncate”)

+ +

Default:

[
+  "absolute"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.pickers.find_command + + +
+
+

cmd to use for finding files

+ +

Type: +(list of string) or (luaInline)

+ +

Default:

[
+  "\${pkgs.fd}/bin/fd"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.prompt_prefix + + +
+
+

Shown in front of Telescope’s prompt

+ +

Type: +string

+ +

Default: +"  "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.selection_caret + + +
+
+

Character(s) to show in front of the current selection

+ +

Type: +string

+ +

Default: +" "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.selection_strategy + + +
+
+

Determines how the cursor acts after each sort iteration.

+ +

Type: +one of “reset”, “follow”, “row”, “closest”, “none”

+ +

Default: +"reset"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.set_env + + +
+
+

Set an environment for term_previewer

+ +

Type: +attribute set of string

+ +

Default:

{
+  COLORTERM = "truecolor";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.sorting_strategy + + +
+
+

Determines the direction “better” results are sorted towards.

+ +

Type: +one of “descending”, “ascending”

+ +

Default: +"ascending"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.vimgrep_arguments + + +
+
+

Defines the command that will be used for live_grep and grep_string pickers. +Make sure that color is set to never because telescope does not yet interpret color codes.

+ +

Type: +list of string

+ +

Default:

[
+  "\${pkgs.ripgrep}/bin/rg"
+  "--color=never"
+  "--no-heading"
+  "--with-filename"
+  "--line-number"
+  "--column"
+  "--smart-case"
+  "--hidden"
+  "--no-ignore"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.telescope.setupOpts.defaults.winblend + + +
+
+

pseudo-transparency of keymap hints floating window

+ +

Type: +signed integer

+ +

Default: +0

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/telescope/telescope.nix> + +
+
+
+ + vim.terminal.toggleterm.enable + + +
+
+

Whether to enable toggleterm as a replacement to built-in terminal command.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/terminal/toggleterm/toggleterm.nix> + +
+
+
+ + vim.terminal.toggleterm.lazygit.enable + + +
+
+

Whether to enable LazyGit integration.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/terminal/toggleterm/toggleterm.nix> + +
+
+
+ + vim.terminal.toggleterm.lazygit.package + + +
+
+

The package that should be used for lazygit. Setting it to null will attempt to use lazygit from your PATH

+ +

Type: +null or package

+ +

Default: +<derivation lazygit-0.44.1>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/terminal/toggleterm/toggleterm.nix> + +
+
+
+ + vim.terminal.toggleterm.lazygit.direction + + +
+
+

Direction of the lazygit window

+ +

Type: +one of “horizontal”, “vertical”, “tab”, “float”

+ +

Default: +"float"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/terminal/toggleterm/toggleterm.nix> + +
+
+
+ + vim.terminal.toggleterm.lazygit.mappings.open + + +
+
+

Open lazygit [toggleterm]

+ +

Type: +null or string

+ +

Default: +"<leader>gg"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/terminal/toggleterm/toggleterm.nix> + +
+
+
+ + vim.terminal.toggleterm.mappings.open + + +
+
+

The keymapping to open toggleterm

+ +

Type: +null or string

+ +

Default: +"<c-t>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/terminal/toggleterm/toggleterm.nix> + +
+
+
+ + vim.terminal.toggleterm.setupOpts + + +
+
+

Option table to pass into the setup function of ToggleTerm

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/terminal/toggleterm/toggleterm.nix> + +
+
+
+ + vim.terminal.toggleterm.setupOpts.enable_winbar + + +
+
+

Enable winbar

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/terminal/toggleterm/toggleterm.nix> + +
+
+
+ + vim.terminal.toggleterm.setupOpts.direction + + +
+
+

Direction of the terminal

+ +

Type: +one of “horizontal”, “vertical”, “tab”, “float”

+ +

Default: +"horizontal"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/terminal/toggleterm/toggleterm.nix> + +
+
+
+ + vim.terminal.toggleterm.setupOpts.size + + +
+
+

Number or lua function which is passed to the current terminal

+ +

Type: +(luaInline) or signed integer

+ +

Default:

{
+  _type = "lua-inline";
+  expr = ''
+    function(term)
+      if term.direction == "horizontal" then
+        return 15
+      elseif term.direction == "vertical" then
+        return vim.o.columns * 0.4
+      end
+    end
+  '';
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/terminal/toggleterm/toggleterm.nix> + +
+
+
+ + vim.terminal.toggleterm.setupOpts.winbar.enabled + + +
+
+

Whether to enable winbar in terminal.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/terminal/toggleterm/toggleterm.nix> + +
+
+
+ + vim.terminal.toggleterm.setupOpts.winbar.name_formatter + + +
+
+

Winbar formatter function.

+ +

Type: +luaInline

+ +

Default:

{
+  _type = "lua-inline";
+  expr = ''
+    function(term)
+      return term.name
+    end
+  '';
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/terminal/toggleterm/toggleterm.nix> + +
+
+
+ + vim.theme.enable + + +
+
+

Enable theming

+ +

Type: +boolean

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base00 + + +
+
+

The base00 color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base01 + + +
+
+

The base01 color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base02 + + +
+
+

The base02 color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base03 + + +
+
+

The base03 color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base04 + + +
+
+

The base04 color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base05 + + +
+
+

The base05 color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base06 + + +
+
+

The base06 color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base07 + + +
+
+

The base07 color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base08 + + +
+
+

The base08 color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base09 + + +
+
+

The base09 color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base0A + + +
+
+

The base0A color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base0B + + +
+
+

The base0B color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base0C + + +
+
+

The base0C color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base0D + + +
+
+

The base0D color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base0E + + +
+
+

The base0E color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.base16-colors.base0F + + +
+
+

The base0F color to use

+ +

Type: +RGB color in hex format

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.extraConfig + + +
+
+

Additional lua configuration to add before setup

+ +

Type: +strings concatenated with “\n”

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.name + + +
+
+

Supported themes can be found in supportedThemes.nix. +Setting the theme to “base16” enables base16 theming and +requires all of the colors in vim.theme.base16-colors to be set.

+ +

Type: +one of “base16”, “catppuccin”, “dracula”, “gruvbox”, “onedark”, “oxocarbon”, “rose-pine”, “tokyonight”

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.style + + +
+
+

Specific style for theme if it supports it

+ +

Type: +one of “dark”, “darker”, “cool”, “deep”, “warm”, “warmer”

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.theme.transparent + + +
+
+

Whether or not transparency should be enabled. Has no effect for themes that do not support transparency

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/theme/theme.nix> + +
+
+
+ + vim.treesitter.enable + + +
+
+

Whether to enable treesitter, also enabled automatically through language options.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.treesitter.addDefaultGrammars + + +
+
+

Whether to add the default grammars to the list of grammars +to install.

This option is only relevant if treesitter has been enabled.

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.treesitter.autotagHtml + + +
+
+

Whether to enable autoclose and rename html tag.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.treesitter.context.enable + + +
+
+

Whether to enable context of current buffer contents [nvim-treesitter-context] .

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/ts-context/context.nix> + +
+
+
+ + vim.treesitter.context.setupOpts + + +
+
+

Option table to pass into the setup function of treesitter-context

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/ts-context/context.nix> + +
+
+
+ + vim.treesitter.context.setupOpts.line_numbers + + +
+
+

Whether to display line numbers in current context

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/ts-context/context.nix> + +
+
+
+ + vim.treesitter.context.setupOpts.max_lines + + +
+
+

How many lines the window should span.

Values >= 0 mean there will be no limit.

+ +

Type: +signed integer

+ +

Default: +0

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/ts-context/context.nix> + +
+
+
+ + vim.treesitter.context.setupOpts.min_window_height + + +
+
+

Minimum editor window height to enable context.

Values >= 0 mean there will be no limit.

+ +

Type: +signed integer

+ +

Default: +0

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/ts-context/context.nix> + +
+
+
+ + vim.treesitter.context.setupOpts.mode + + +
+
+

Line used to calculate context.

+ +

Type: +one of “cursor”, “topline”

+ +

Default: +"cursor"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/ts-context/context.nix> + +
+
+
+ + vim.treesitter.context.setupOpts.multiline_threshold + + +
+
+

Maximum number of lines to collapse for a single context line.

+ +

Type: +signed integer

+ +

Default: +20

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/ts-context/context.nix> + +
+
+
+ + vim.treesitter.context.setupOpts.separator + + +
+
+

Separator between context and content. This option should +be a single character string, like ‘-’.

When separator is set, the context will only show up when +there are at least 2 lines above cursorline.

+ +

Type: +null or string

+ +

Default: +"-"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/ts-context/context.nix> + +
+
+
+ + vim.treesitter.context.setupOpts.trim_scope + + +
+
+

Which context lines to discard if +vim.treesitter.context.setupOpts.max_lines is exceeded.

+ +

Type: +one of “inner”, “outer”

+ +

Default: +"outer"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/ts-context/context.nix> + +
+
+
+ + vim.treesitter.context.setupOpts.zindex + + +
+
+

The Z-index of the context window.

+ +

Type: +signed integer

+ +

Default: +20

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/ts-context/context.nix> + +
+
+
+ + vim.treesitter.fold + + +
+
+

Whether to enable fold with treesitter.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.treesitter.grammars + + +
+
+

List of treesitter grammars to install.

For languages already supported by nvf, you may +use the vim.language.<lang>.treesitter options, which +will automatically add the required grammars to this.

+ +

Type: +list of package

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.treesitter.highlight.enable + + +
+
+

Whether to enable highlighting with treesitter.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.treesitter.highlight.additionalVimRegexHighlighting + + +
+
+

Takes either a boolean or a list of languages.

Setting this to true will run :h syntax and tree-sitter at the same time. +You may this to true if you depend on ‘syntax’ being enabled (like for +indentation).

Note

Using this option may slow down your editor, and you may see some duplicate +highlights.

+ +

Type: +boolean or list of string

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.treesitter.highlight.disable + + +
+
+

List of treesitter grammars to disable highlighting for.

This option can be either a list, in which case it will be +converted to a Lua table containing grammars to disable +highlighting for, or a string containing a lua function +that will be read as is.

Warning

A comma will be added at the end of your function, so you +do not need to add it yourself. Doing so will cause in +syntax errors within your Neovim configuration.

+ +

Type: +(list of string) or (luaInline)

+ +

Default: +[ ]

+ +

Example:

-- Disable slow treesitter highlight for large files
+function(lang, buf)
+  local max_filesize = 1000 * 1024 -- 1MB
+  local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf))
+  if ok and stats and stats.size > max_filesize then
+      return true
+  end
+end
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.treesitter.incrementalSelection.enable + + +
+
+

Whether to enable incremental selection with treesitter.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.treesitter.incrementalSelection.disable + + +
+
+

List of treesitter grammars to disable incremental selection +for.

This option can be either a list, in which case it will be +converted to a Lua table containing grammars to disable +indentation for, or a string containing a lua function +that will be read as is.

Warning

A comma will be added at the end of your function, so you +do not need to add it yourself. Doing so will cause in +syntax errors within your Neovim configuration.

+ +

Type: +(list of string) or (luaInline)

+ +

Default: +[ ]

+ +

Example: +["c" "rust" ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.treesitter.indent.enable + + +
+
+

Whether to enable indentation with treesitter.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.treesitter.indent.disable + + +
+
+

List of treesitter grammars to disable indentation for.

This option can be either a list, in which case it will be +converted to a Lua table containing grammars to disable +indentation for, or a string containing a lua function +that will be read as is.

Warning

A comma will be added at the end of your function, so you +do not need to add it yourself. Doing so will cause in +syntax errors within your Neovim configuration.

+ +

Type: +(list of string) or (luaInline)

+ +

Default: +[ ]

+ +

Example: +["c" "rust"]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.treesitter.mappings.incrementalSelection.decrementByNode + + +
+
+

Decrement selection by node [treesitter]

+ +

Type: +null or string

+ +

Default: +"grm"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.treesitter.mappings.incrementalSelection.incrementByNode + + +
+
+

Increment selection by node [treesitter]

+ +

Type: +null or string

+ +

Default: +"grn"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.treesitter.mappings.incrementalSelection.incrementByScope + + +
+
+

Increment selection by scope [treesitter]

+ +

Type: +null or string

+ +

Default: +"grc"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.treesitter.mappings.incrementalSelection.init + + +
+
+

Init selection [treesitter]

+ +

Type: +null or string

+ +

Default: +"gnn"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/treesitter/treesitter.nix> + +
+
+
+ + vim.ui.borders.enable + + +
+
+

Whether to enable visible borders for most windows.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/borders/borders.nix> + +
+
+
+ + vim.ui.borders.globalStyle + + +
+
+

The global border style to use.

If a list is given, it should have a length of eight or any divisor of +eight. The array will specify the eight chars building up the border in +a clockwise fashion starting with the top-left corner. You can specify +a different highlight group for each character by passing a +[char, “YourHighlightGroup”] instead

+ +

Type: +one of “none”, “single”, “double”, “rounded”, “solid”, “shadow” or list of (string or list of string)

+ +

Default: +"rounded"

+ +

Example:

[
+  "╔"
+  "═"
+  "╗"
+  "║"
+  "╝"
+  "═"
+  "╚"
+  "║"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/borders/borders.nix> + +
+
+
+ + vim.ui.borders.plugins.fastaction.enable + + +
+
+

Whether to enable borders for the fastaction plugin.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/borders/borders.nix> + +
+
+
+ + vim.ui.borders.plugins.fastaction.style + + +
+
+

The border style to use for the fastaction plugin

+ +

Type: +one of “none”, “single”, “double”, “rounded”, “solid”, “shadow” or list of (string or list of string)

+ +

Default: +"rounded"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/borders/borders.nix> + +
+
+
+ + vim.ui.borders.plugins.lsp-signature.enable + + +
+
+

Whether to enable borders for the lsp-signature plugin.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/borders/borders.nix> + +
+
+
+ + vim.ui.borders.plugins.lsp-signature.style + + +
+
+

The border style to use for the lsp-signature plugin

+ +

Type: +one of “none”, “single”, “double”, “rounded”, “solid”, “shadow” or list of (string or list of string)

+ +

Default: +"rounded"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/borders/borders.nix> + +
+
+
+ + vim.ui.borders.plugins.lspsaga.enable + + +
+
+

Whether to enable borders for the lspsaga plugin.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/borders/borders.nix> + +
+
+
+ + vim.ui.borders.plugins.lspsaga.style + + +
+
+

The border style to use for the lspsaga plugin

+ +

Type: +one of “none”, “single”, “double”, “rounded”, “solid”, “shadow” or list of (string or list of string)

+ +

Default: +"rounded"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/borders/borders.nix> + +
+
+
+ + vim.ui.borders.plugins.nvim-cmp.enable + + +
+
+

Whether to enable borders for the nvim-cmp plugin.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/borders/borders.nix> + +
+
+
+ + vim.ui.borders.plugins.nvim-cmp.style + + +
+
+

The border style to use for the nvim-cmp plugin

+ +

Type: +one of “none”, “single”, “double”, “rounded”, “solid”, “shadow” or list of (string or list of string)

+ +

Default: +"rounded"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/borders/borders.nix> + +
+
+
+ + vim.ui.borders.plugins.which-key.enable + + +
+
+

Whether to enable borders for the which-key plugin.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/borders/borders.nix> + +
+
+
+ + vim.ui.borders.plugins.which-key.style + + +
+
+

The border style to use for the which-key plugin

+ +

Type: +one of “none”, “single”, “double”, “rounded”, “solid”, “shadow” or list of (string or list of string)

+ +

Default: +"rounded"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/borders/borders.nix> + +
+
+
+ + vim.ui.breadcrumbs.enable + + +
+
+

Whether to enable breadcrumbs.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.lualine.winbar.enable + + +
+
+

Whether to automatically configure a winbar component for +Lualine on the Winbar section.

Note

This is set to true by default, which means nvim-navic +will occupy winbar.lualine_c for the breadcrumbs feature +unless this option is set to false.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.lualine.winbar.alwaysRender + + +
+
+

Whether to always display the breadcrumbs component +on winbar.

Note

This will pass draw_empty to the nvim_navic winbar +component, which causes the component to be drawn even +if it’s empty

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.enable + + +
+
+

Whether to enable navbuddy LSP helper UI. Enabling this option automatically loads and enables nvim-navic.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.appendName + + +
+
+

insert at end of name

+ +

Type: +string

+ +

Default: +"a"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.appendScope + + +
+
+

insert at end of scope

+ +

Type: +string

+ +

Default: +"A"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.children + + +
+
+

keybinding to navigate to the child node

+ +

Type: +string

+ +

Default: +"l"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.close + + +
+
+

keybinding to close Navbuddy UI

+ +

Type: +string

+ +

Default: +"<esc>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.comment + + +
+
+

comment the node

+ +

Type: +string

+ +

Default: +"c"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.delete + + +
+
+

delete the node

+ +

Type: +string

+ +

Default: +"d"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.foldCreate + + +
+
+

create a new fold

+ +

Type: +string

+ +

Default: +"f"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.foldDelete + + +
+
+

delete the current fold

+ +

Type: +string

+ +

Default: +"F"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.help + + +
+
+

open mapping help window

+ +

Type: +string

+ +

Default: +"g?"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.insertName + + +
+
+

insert at start of name

+ +

Type: +string

+ +

Default: +"i"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.insertScope + + +
+
+

insert at start of scope

+ +

Type: +string

+ +

Default: +"I"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.moveDown + + +
+
+

move focused node down

+ +

Type: +string

+ +

Default: +"J"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.moveUp + + +
+
+

move focused node up

+ +

Type: +string

+ +

Default: +"K"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.nextSibling + + +
+
+

keybinding to navigate to the next sibling node

+ +

Type: +string

+ +

Default: +"j"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.parent + + +
+
+

keybinding to navigate to the parent node

+ +

Type: +string

+ +

Default: +"h"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.previousSibling + + +
+
+

keybinding to navigate to the previous sibling node

+ +

Type: +string

+ +

Default: +"k"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.rename + + +
+
+

rename the node

+ +

Type: +string

+ +

Default: +"r"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.root + + +
+
+

keybinding to navigate to the root node

+ +

Type: +string

+ +

Default: +"0"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.select + + +
+
+

goto selected symbol

+ +

Type: +string

+ +

Default: +"<enter>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.telescope + + +
+
+

fuzzy finder at current level

+ +

Type: +string

+ +

Default: +"t"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.visualName + + +
+
+

visual selection of name

+ +

Type: +string

+ +

Default: +"v"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.visualScope + + +
+
+

visual selection of scope

+ +

Type: +string

+ +

Default: +"V"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.yankName + + +
+
+

yank the name to system clipboard

+ +

Type: +string

+ +

Default: +"y"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.mappings.yankScope + + +
+
+

yank the scope to system clipboard

+ +

Type: +string

+ +

Default: +"Y"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts + + +
+
+

Option table to pass into the setup function of navbuddy

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Array + + +
+
+

Type: +string

+ +

Default: +"󰅪 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Boolean + + +
+
+

Type: +string

+ +

Default: +"◩ "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Class + + +
+
+

Type: +string

+ +

Default: +"󰌗 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Constant + + +
+
+

Type: +string

+ +

Default: +"󰏿 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Constructor + + +
+
+

Type: +string

+ +

Default: +" "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Enum + + +
+
+

Type: +string

+ +

Default: +"󰕘"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.EnumMember + + +
+
+

Type: +string

+ +

Default: +"󰕘 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Event + + +
+
+

Type: +string

+ +

Default: +" "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Field + + +
+
+

Type: +string

+ +

Default: +" "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.File + + +
+
+

Type: +string

+ +

Default: +"󰈙 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Function + + +
+
+

Type: +string

+ +

Default: +"󰊕 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Interface + + +
+
+

Type: +string

+ +

Default: +"󰕘"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Key + + +
+
+

Type: +string

+ +

Default: +"󰌋 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Method + + +
+
+

Type: +string

+ +

Default: +"󰆧 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Module + + +
+
+

Type: +string

+ +

Default: +" "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Namespace + + +
+
+

Type: +string

+ +

Default: +"󰌗 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Null + + +
+
+

Type: +string

+ +

Default: +"󰟢 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Number + + +
+
+

Type: +string

+ +

Default: +"󰎠 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Object + + +
+
+

Type: +string

+ +

Default: +"󰅩 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Operator + + +
+
+

Type: +string

+ +

Default: +"󰆕 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Package + + +
+
+

Type: +string

+ +

Default: +" "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Property + + +
+
+

Type: +string

+ +

Default: +" "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.String + + +
+
+

Type: +string

+ +

Default: +" "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Struct + + +
+
+

Type: +string

+ +

Default: +"󰌗 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.TypeParameter + + +
+
+

Type: +string

+ +

Default: +"󰊄 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.icons.Variable + + +
+
+

Type: +string

+ +

Default: +"󰆧 "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.lsp.auto_attach + + +
+
+

Whether to attach to LSP server manually

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.lsp.preference + + +
+
+

list of lsp server names in order of preference

+ +

Type: +null or (list of string)

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.node_markers.enable + + +
+
+

Whether to enable node markers.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.node_markers.icons.branch + + +
+
+

Type: +string

+ +

Default: +" "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.node_markers.icons.leaf + + +
+
+

Type: +string

+ +

Default: +" "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.node_markers.icons.leaf_selected + + +
+
+

Type: +string

+ +

Default: +" → "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.source_buffer.followNode + + +
+
+

keep the current node in focus on the source buffer

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.source_buffer.highlight + + +
+
+

highlight the currently focused node

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.source_buffer.reorient + + +
+
+

reorient buffer after changing nodes

+ +

Type: +one of “smart”, “top”, “mid”, “none”

+ +

Default: +"smart"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.source_buffer.scrolloff + + +
+
+

scrolloff value when navbuddy is open

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.useDefaultMappings + + +
+
+

use default Navbuddy keybindings (disables user-specified keybinds)

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.window.border + + +
+
+

border style to use

+ +

Type: +one of “none”, “single”, “double”, “rounded”, “solid”, “shadow” or list of (string or list of string)

+ +

Default: +"rounded"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.window.scrolloff + + +
+
+

Scrolloff value within navbuddy window

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.window.sections.left.border + + +
+
+

border style to use for the left section of Navbuddy UI

+ +

Type: +one of “none”, “single”, “double”, “rounded”, “solid”, “shadow” or list of (string or list of string)

+ +

Default: +"rounded"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.window.sections.mid.border + + +
+
+

border style to use for the middle section of Navbuddy UI

+ +

Type: +one of “none”, “single”, “double”, “rounded”, “solid”, “shadow” or list of (string or list of string)

+ +

Default: +"rounded"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.window.sections.right.border + + +
+
+

border style to use for the right section of Navbuddy UI

+ +

Type: +one of “none”, “single”, “double”, “rounded”, “solid”, “shadow” or list of (string or list of string)

+ +

Default: +"rounded"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.navbuddy.setupOpts.window.sections.right.preview + + +
+
+

display mode of the preview on the right section

+ +

Type: +one of “leaf”, “always”, “never”

+ +

Default: +"leaf"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.breadcrumbs.source + + +
+
+

The source to be used for breadcrumbs component. Null means no breadcrumbs.

+ +

Type: +null or value “nvim-navic” (singular enum)

+ +

Default: +"nvim-navic"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/breadcrumbs/breadcrumbs.nix> + +
+
+
+ + vim.ui.colorizer.enable + + +
+
+

Whether to enable color highlighting [nvim-colorizer.lua].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts + + +
+
+

Option table to pass into the setup function of colorizer

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.filetypes + + +
+
+

Filetypes to enable on and their option overrides.

“*” means enable on all filetypes. Filetypes prefixed with “!” are disabled.

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Example:

{
+  "!vim" = { };
+  "*" = { };
+  javascript = {
+    AARRGGBB = false;
+  };
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.filetypes.<name>.AARRGGBB + + +
+
+

Colorize 0xAARRGGBB hex codes

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.filetypes.<name>.RGB + + +
+
+

Colorize #RGB hex codes

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.filetypes.<name>.RRGGBB + + +
+
+

Colorize #RRGGBB hex codes

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.filetypes.<name>.RRGGBBAA + + +
+
+

Colorize #RRGGBBAA hex codes

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.filetypes.<name>.always_update + + +
+
+

Update color values even if buffer is not focused. Example use: cmp_menu, cmp_docs

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.filetypes.<name>.css + + +
+
+

Enable all CSS features: rgb_fn, hsl_fn, names, RGB, RRGGBB

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.filetypes.<name>.css_fn + + +
+
+

Enable all CSS functions: rgb_fn, hsl_fn

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.filetypes.<name>.hsl_fn + + +
+
+

Colorize CSS hsl() and hsla() functions

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.filetypes.<name>.mode + + +
+
+

Set the display mode

+ +

Type: +null or one of “foreground”, “background”

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.filetypes.<name>.names + + +
+
+

Colorize “Name” codes like Blue

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.filetypes.<name>.rgb_fn + + +
+
+

Colorize CSS rgb() and rgba() functions

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.filetypes.<name>.sass + + +
+
+

Enable sass colors

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.filetypes.<name>.tailwind + + +
+
+

Enable tailwind colors

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.filetypes.<name>.virtualtext + + +
+
+

String to display as virtualtext

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.user_default_options + + +
+
+

Default options

+ +

Type: +submodule

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.user_default_options.AARRGGBB + + +
+
+

Colorize 0xAARRGGBB hex codes

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.user_default_options.RGB + + +
+
+

Colorize #RGB hex codes

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.user_default_options.RRGGBB + + +
+
+

Colorize #RRGGBB hex codes

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.user_default_options.RRGGBBAA + + +
+
+

Colorize #RRGGBBAA hex codes

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.user_default_options.always_update + + +
+
+

Update color values even if buffer is not focused. Example use: cmp_menu, cmp_docs

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.user_default_options.css + + +
+
+

Enable all CSS features: rgb_fn, hsl_fn, names, RGB, RRGGBB

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.user_default_options.css_fn + + +
+
+

Enable all CSS functions: rgb_fn, hsl_fn

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.user_default_options.hsl_fn + + +
+
+

Colorize CSS hsl() and hsla() functions

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.user_default_options.mode + + +
+
+

Set the display mode

+ +

Type: +null or one of “foreground”, “background”

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.user_default_options.names + + +
+
+

Colorize “Name” codes like Blue

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.user_default_options.rgb_fn + + +
+
+

Colorize CSS rgb() and rgba() functions

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.user_default_options.sass + + +
+
+

Enable sass colors

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.user_default_options.tailwind + + +
+
+

Enable tailwind colors

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.colorizer.setupOpts.user_default_options.virtualtext + + +
+
+

String to display as virtualtext

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/colorizer/colorizer.nix> + +
+
+
+ + vim.ui.fastaction.enable + + +
+
+

Whether to enable overriding vim.ui.select with fastaction.nvim.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/fastaction/fastaction-nvim.nix> + +
+
+
+ + vim.ui.fastaction.setupOpts + + +
+
+

Option table to pass into the setup function of fastaction

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/fastaction/fastaction-nvim.nix> + +
+
+
+ + vim.ui.illuminate.enable + + +
+
+

Whether to enable automatically highlight other uses of the word under the cursor [vim-illuminate].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/illuminate/illuminate.nix> + +
+
+
+ + vim.ui.modes-nvim.enable + + +
+
+

Whether to enable modes.nvim’s prismatic line decorations.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/modes/modes.nix> + +
+
+
+ + vim.ui.modes-nvim.setupOpts.colors + + +
+
+

Option table to pass into the setup function of modes.nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/modes/modes.nix> + +
+
+
+ + vim.ui.modes-nvim.setupOpts.colors.copy + + +
+
+

The #RRGGBB color code for the visual mode highlights

+ +

Type: +string

+ +

Default: +"#f5c359"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/modes/modes.nix> + +
+
+
+ + vim.ui.modes-nvim.setupOpts.colors.delete + + +
+
+

The #RRGGBB color code for the visual mode highlights

+ +

Type: +string

+ +

Default: +"#c75c6a"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/modes/modes.nix> + +
+
+
+ + vim.ui.modes-nvim.setupOpts.colors.insert + + +
+
+

The #RRGGBB color code for the visual mode highlights

+ +

Type: +string

+ +

Default: +"#78ccc5"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/modes/modes.nix> + +
+
+
+ + vim.ui.modes-nvim.setupOpts.colors.visual + + +
+
+

The #RRGGBB color code for the visual mode highlights

+ +

Type: +string

+ +

Default: +"#9745be"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/modes/modes.nix> + +
+
+
+ + vim.ui.modes-nvim.setupOpts.line_opacity.visual + + +
+
+

Set opacity for cursorline and number background

+ +

Type: +floating point number

+ +

Default: +0.0

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/modes/modes.nix> + +
+
+
+ + vim.ui.modes-nvim.setupOpts.setCursorline + + +
+
+

Set a colored cursorline on current line

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/modes/modes.nix> + +
+
+
+ + vim.ui.noice.enable + + +
+
+

Whether to enable noice.nvim UI modification library.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts + + +
+
+

Option table to pass into the setup function of noice.nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.format.cmdline + + +
+
+

formatting options for the cmdline

+ +

Type: +null or anything

+ +

Default:

{
+  icon = "";
+  lang = "vim";
+  pattern = "^:";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.format.filter + + +
+
+

formatting options for filter

+ +

Type: +null or anything

+ +

Default:

{
+  icon = "";
+  lang = "bash";
+  pattern = "^:%s*!";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.format.help + + +
+
+

formatting options for help

+ +

Type: +null or anything

+ +

Default:

{
+  icon = "󰋖";
+  pattern = "^:%s*he?l?p?%s+";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.format.lua + + +
+
+

formatting options for lua

+ +

Type: +null or anything

+ +

Default:

{
+  icon = "";
+  lang = "lua";
+  pattern = "^:%s*lua%s+";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.format.search_down + + +
+
+

formatting options for search_down

+ +

Type: +null or anything

+ +

Default:

{
+  icon = " ";
+  kind = "search";
+  lang = "regex";
+  pattern = "^/";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.format.search_up + + +
+
+

formatting options for search_up

+ +

Type: +null or anything

+ +

Default:

{
+  icon = " ";
+  kind = "search";
+  lang = "regex";
+  pattern = "^%?";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.lsp.override."cmp.entry.get_documentation" + + +
+
+

override cmp documentation with Noice

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.lsp.override."vim.lsp.util.convert_input_to_markdown_lines" + + +
+
+

override the default lsp markdown formatter with Noice

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.lsp.override."vim.lsp.util.stylize_markdown" + + +
+
+

override the lsp markdown formatter with Noice

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.lsp.signature.enabled + + +
+
+

Whether to enable signature help.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.presets.bottom_search + + +
+
+

use a classic bottom cmdline for search

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.presets.command_palette + + +
+
+

position the cmdline and popupmenu together

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.presets.inc_rename + + +
+
+

enables an input dialog for inc-rename.nvim

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.presets.long_message_to_split + + +
+
+

long messages will be sent to a split

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.presets.lsp_doc_border + + +
+
+

add a border to hover docs and signature help

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.routes + + +
+
+

How to route messages

+ +

Type: +list of (submodule)

+ +

Default: +"Hide written messages"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.routes.*.filter + + +
+
+

a filter for messages matching this route

+ +

Type: +anything

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.routes.*.opts + + +
+
+

options for the view and the route

+ +

Type: +null or anything

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.noice.setupOpts.routes.*.view + + +
+
+

how this route is viewed

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/noice/noice.nix> + +
+
+
+ + vim.ui.smartcolumn.enable + + +
+
+

Whether to enable line length indicator.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/smartcolumn/smartcolumn.nix> + +
+
+
+ + vim.ui.smartcolumn.setupOpts + + +
+
+

Option table to pass into the setup function of smartcolumn.nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/smartcolumn/smartcolumn.nix> + +
+
+
+ + vim.ui.smartcolumn.setupOpts.colorcolumn + + +
+
+

The position at which the column will be displayed. Set to null to disable

+ +

Type: +null or string or list of string

+ +

Default: +"120"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/smartcolumn/smartcolumn.nix> + +
+
+
+ + vim.ui.smartcolumn.setupOpts.custom_colorcolumn + + +
+
+

The position at which smart column should be displayed for each individual buffer type

+ +

Type: +attribute set of (string or list of string)

+ +

Default: +{ }

+ +

Example:

vim.ui.smartcolumn.setupOpts.custom_colorcolumn = {
+  nix = "110";
+  ruby = "120";
+  java = "130";
+  go = ["90" "130"];
+};
+
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/smartcolumn/smartcolumn.nix> + +
+
+
+ + vim.ui.smartcolumn.setupOpts.disabled_filetypes + + +
+
+

The filetypes smartcolumn will be disabled for.

+ +

Type: +list of string

+ +

Default:

[
+  "help"
+  "text"
+  "markdown"
+  "NvimTree"
+  "alpha"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/ui/smartcolumn/smartcolumn.nix> + +
+
+
+ + vim.undoFile.enable + + +
+
+

Whether to enable undofile for persistent undo behaviour.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/basic.nix> + +
+
+
+ + vim.undoFile.path + + +
+
+

Path to the directory in which undo history will be stored

+ +

Type: +string or (luaInline)

+ +

Default:

mkLuaInline "vim.fn.stdpath('state') .. '/undo'"
+
+ +

Example:

mkLuaInline "os.getenv('XDG_DATA_HOME') .. '/nvf/undo'"
+
+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/basic.nix> + +
+
+
+ + vim.useSystemClipboard + + +
+
+

Make use of the clipboard for default yank and paste operations. Don’t use * and +

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/neovim/init/basic.nix> + +
+
+
+ + vim.utility.ccc.enable + + +
+
+

Whether to enable ccc color picker for neovim.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/ccc/ccc.nix> + +
+
+
+ + vim.utility.ccc.mappings.decrease10 + + +
+
+

Decrease the value times delta of the slider

+ +

Type: +null or string

+ +

Default: +"<H>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/ccc/ccc.nix> + +
+
+
+ + vim.utility.ccc.mappings.increase10 + + +
+
+

Increase the value times delta of the slider

+ +

Type: +null or string

+ +

Default: +"<L>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/ccc/ccc.nix> + +
+
+
+ + vim.utility.ccc.mappings.quit + + +
+
+

Cancel and close the UI without replace or insert

+ +

Type: +null or string

+ +

Default: +"<Esc>"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/ccc/ccc.nix> + +
+
+
+ + vim.utility.diffview-nvim.enable + + +
+
+

Whether to enable diffview-nvim: cycle through diffs for all modified files for any git rev.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/diffview/diffview.nix> + +
+
+
+ + vim.utility.diffview-nvim.setupOpts + + +
+
+

Option table to pass into the setup function of Fidget

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/diffview/diffview.nix> + +
+
+
+ + vim.utility.icon-picker.enable + + +
+
+

Whether to enable nerdfonts icon picker for nvim.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/icon-picker/icon-picker.nix> + +
+
+
+ + vim.utility.images.image-nvim.enable + + +
+
+

Whether to enable image support in Neovim [image.nvim].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts + + +
+
+

Option table to pass into the setup function of image.nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.backend + + +
+
+

The backend to use for rendering images.

  • kitty - best in class, works great and is very snappy

  • ueberzug - backed by ueberzugpp, supports any terminal, +but has lower performance

+ +

Type: +one of “kitty”, “ueberzug”

+ +

Default: +"ueberzug"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.editorOnlyRenderWhenFocused + + +
+
+

Whether to enable only rendering images when the editor is focused.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.hijackFilePatterns + + +
+
+

File patterns to hijack for image.nvim. This is useful for +filetypes that don’t have a dedicated integration.

+ +

Type: +list of string

+ +

Default:

[
+  "*.png"
+  "*.jpg"
+  "*.jpeg"
+  "*.gif"
+  "*.webp"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.integrations.markdown.enable + + +
+
+

Whether to enable image.nvim in markdown files.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.integrations.markdown.clearInInsertMode + + +
+
+

Whether to enable clearing of images when entering insert mode.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.integrations.markdown.downloadRemoteImages + + +
+
+

Whether to enable downloading remote images.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.integrations.markdown.filetypes + + +
+
+

Filetypes to enable image.nvim in. Markdown extensions +(i.e. quarto) can go here

+ +

Type: +list of string

+ +

Default:

[
+  "markdown"
+  "vimwiki"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.integrations.markdown.onlyRenderAtCursor + + +
+
+

Whether to enable only rendering images at cursor.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.integrations.maxWidth + + +
+
+

The maximum width of images to render. Images larger than +this will be scaled down to fit within this width.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.integrations.neorg.enable + + +
+
+

Whether to enable image.nvim in Neorg files.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.integrations.neorg.clearInInsertMode + + +
+
+

Whether to enable clearing of images when entering insert mode.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.integrations.neorg.downloadRemoteImages + + +
+
+

Whether to enable downloading remote images.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.integrations.neorg.filetypes + + +
+
+

Filetypes to enable image.nvim in.

+ +

Type: +list of string

+ +

Default:

[
+  "neorg"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.integrations.neorg.onlyRenderAtCursor + + +
+
+

Whether to enable only rendering images at cursor.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.maxHeight + + +
+
+

The maximum height of images to render. Images larger than +this will be scaled down to fit within this height.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.maxHeightWindowPercentage + + +
+
+

The maximum height of images to render as a percentage of the +window height. Images larger than this will be scaled down to +fit within this height.

+ +

Type: +null or signed integer

+ +

Default: +50

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.maxWidthWindowPercentage + + +
+
+

The maximum width of images to render as a percentage of the +window width. Images larger than this will be scaled down to +fit within this width.

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.windowOverlapClear.enable + + +
+
+

Whether to enable clearing of images when they overlap with the window.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.images.image-nvim.setupOpts.windowOverlapClear.ftIgnore + + +
+
+

Filetypes to ignore window overlap clearing in.

+ +

Type: +list of string

+ +

Default:

[
+  "cmp_menu"
+  "cmp_docs"
+  ""
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/images/image-nvim/image-nvim.nix> + +
+
+
+ + vim.utility.motion.hop.enable + + +
+
+

Whether to enable Hop.nvim plugin (easy motion).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/hop/hop.nix> + +
+
+
+ + vim.utility.motion.hop.mappings.hop + + +
+
+

Jump to occurrences [hop.nvim]

+ +

Type: +null or string

+ +

Default: +"<leader>h"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/hop/hop.nix> + +
+
+
+ + vim.utility.motion.leap.enable + + +
+
+

Whether to enable leap.nvim plugin (easy motion).

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/leap/leap.nix> + +
+
+
+ + vim.utility.motion.leap.mappings.leapBackwardTill + + +
+
+

Leap backward till

+ +

Type: +null or string

+ +

Default: +"<leader>sX"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/leap/leap.nix> + +
+
+
+ + vim.utility.motion.leap.mappings.leapBackwardTo + + +
+
+

Leap backward to

+ +

Type: +null or string

+ +

Default: +"<leader>sS"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/leap/leap.nix> + +
+
+
+ + vim.utility.motion.leap.mappings.leapForwardTill + + +
+
+

Leap forward till

+ +

Type: +null or string

+ +

Default: +"<leader>sx"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/leap/leap.nix> + +
+
+
+ + vim.utility.motion.leap.mappings.leapForwardTo + + +
+
+

Leap forward to

+ +

Type: +null or string

+ +

Default: +"<leader>ss"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/leap/leap.nix> + +
+
+
+ + vim.utility.motion.leap.mappings.leapFromWindow + + +
+
+

Leap from window

+ +

Type: +null or string

+ +

Default: +"gs"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/leap/leap.nix> + +
+
+
+ + vim.utility.motion.precognition.enable + + +
+
+

Whether to enable assisted motion discovery[precognition.nvim].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/precognition/precognition.nix> + +
+
+
+ + vim.utility.motion.precognition.setupOpts + + +
+
+

Option table to pass into the setup function of precognition.nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/precognition/precognition.nix> + +
+
+
+ + vim.utility.motion.precognition.setupOpts.disabled_fts + + +
+
+

Filetypes that automatically disable ‘precognition’

+ +

Type: +list of string

+ +

Default:

[
+  "startify"
+]
+
+ +

Example: +["startify"]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/precognition/precognition.nix> + +
+
+
+ + vim.utility.motion.precognition.setupOpts.gutterHints + + +
+
+

What motions display and at what priority. Only appears in gutters

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/precognition/precognition.nix> + +
+
+
+ + vim.utility.motion.precognition.setupOpts.gutterHints.<name>.prio + + +
+
+

The priority of the hint

+ +

Type: +signed integer

+ +

Default: +1

+ +

Example: +10

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/precognition/precognition.nix> + +
+
+
+ + vim.utility.motion.precognition.setupOpts.gutterHints.<name>.text + + +
+
+

The easier-to-read depiction of the motion

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/precognition/precognition.nix> + +
+
+
+ + vim.utility.motion.precognition.setupOpts.highlightColor + + +
+
+

The highlight for the virtual text

+ +

Type: +attribute set of string

+ +

Default:

{
+  link = "Comment";
+}
+
+ +

Example:

{ link = "Comment"; }
+# or
+{ foreground = "#0000FF"; background = "#000000"; };
+
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/precognition/precognition.nix> + +
+
+
+ + vim.utility.motion.precognition.setupOpts.hints + + +
+
+

What motions display, and at what priority

+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/precognition/precognition.nix> + +
+
+
+ + vim.utility.motion.precognition.setupOpts.hints.<name>.prio + + +
+
+

The priority of the hint

+ +

Type: +signed integer

+ +

Default: +1

+ +

Example: +10

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/precognition/precognition.nix> + +
+
+
+ + vim.utility.motion.precognition.setupOpts.hints.<name>.text + + +
+
+

The easier-to-read depiction of the motion

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/precognition/precognition.nix> + +
+
+
+ + vim.utility.motion.precognition.setupOpts.showBlankVirtLine + + +
+
+

Whether to show a blank virtual line when no movements are shown

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/precognition/precognition.nix> + +
+
+
+ + vim.utility.motion.precognition.setupOpts.startVisible + + +
+
+

Whether to start ‘precognition’ automatically

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/motion/precognition/precognition.nix> + +
+
+
+ + vim.utility.new-file-template.enable + + +
+
+

new-file-template.nvim: Automatically insert a template on new files in neovim.

Note

For custom templates add a directory containing lua/templates/*.lua +to vim.additionalRuntimePaths.

More documentation on the templates available at custom-template-docs

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/new-file-template/new-file-template.nix> + +
+
+
+ + vim.utility.new-file-template.setupOpts + + +
+
+

Option table to pass into the setup function of nvim-file-template.nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/new-file-template/new-file-template.nix> + +
+
+
+ + vim.utility.new-file-template.setupOpts.disableAutocmd + + +
+
+

Disable the autocmd that creates the template

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/new-file-template/new-file-template.nix> + +
+
+
+ + vim.utility.new-file-template.setupOpts.disableFiletype + + +
+
+

Disable default templates for specific filetypes

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/new-file-template/new-file-template.nix> + +
+
+
+ + vim.utility.new-file-template.setupOpts.disableInsert + + +
+
+

Enter insert mode after inserting the template

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/new-file-template/new-file-template.nix> + +
+
+
+ + vim.utility.new-file-template.setupOpts.disableSpecific + + +
+
+

Disable specific regexp for the default templates.

+ +

Type: +attribute set of list of string

+ +

Default: +{ }

+ +

Example: +"{ ruby = [\".*\"]; }"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/new-file-template/new-file-template.nix> + +
+
+
+ + vim.utility.new-file-template.setupOpts.suffixAsFiletype + + +
+
+

Use suffix of filename rather than vim.bo.filetype as filetype

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/new-file-template/new-file-template.nix> + +
+
+
+ + vim.utility.preview.glow.enable + + +
+
+

Whether to enable markdown preview in neovim with glow.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/preview/glow/glow.nix> + +
+
+
+ + vim.utility.preview.glow.mappings.openPreview + + +
+
+

Open preview

+ +

Type: +null or string

+ +

Default: +"<leader>p"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/preview/glow/glow.nix> + +
+
+
+ + vim.utility.preview.markdownPreview.enable + + +
+
+

Whether to enable Markdown preview in neovim with markdown-preview.nvim.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/preview/markdown-preview/markdown-preview.nix> + +
+
+
+ + vim.utility.preview.markdownPreview.alwaysAllowPreview + + +
+
+

Allow preview on all filetypes

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/preview/markdown-preview/markdown-preview.nix> + +
+
+
+ + vim.utility.preview.markdownPreview.autoClose + + +
+
+

Automatically close the preview window after leaving a Markdown buffer

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/preview/markdown-preview/markdown-preview.nix> + +
+
+
+ + vim.utility.preview.markdownPreview.autoStart + + +
+
+

Automatically open the preview window after entering a Markdown buffer

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/preview/markdown-preview/markdown-preview.nix> + +
+
+
+ + vim.utility.preview.markdownPreview.broadcastServer + + +
+
+

Allow for outside and network wide connections

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/preview/markdown-preview/markdown-preview.nix> + +
+
+
+ + vim.utility.preview.markdownPreview.customIP + + +
+
+

IP-address to use

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/preview/markdown-preview/markdown-preview.nix> + +
+
+
+ + vim.utility.preview.markdownPreview.customPort + + +
+
+

Port to use

+ +

Type: +string

+ +

Default: +""

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/preview/markdown-preview/markdown-preview.nix> + +
+
+
+ + vim.utility.preview.markdownPreview.filetypes + + +
+
+

Allowed filetypes

+ +

Type: +list of string

+ +

Default:

[
+  "markdown"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/preview/markdown-preview/markdown-preview.nix> + +
+
+
+ + vim.utility.preview.markdownPreview.lazyRefresh + + +
+
+

Only update preview when saving or leaving insert mode

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/preview/markdown-preview/markdown-preview.nix> + +
+
+
+ + vim.utility.surround.enable + + +
+
+

nvim-surround: add/change/delete surrounding delimiter pairs with ease. +Note that the default mappings deviate from upstreeam to avoid conflicts +with nvim-leap.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/surround/surround.nix> + +
+
+
+ + vim.utility.surround.setupOpts + + +
+
+

Option table to pass into the setup function of nvim-surround

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/surround/surround.nix> + +
+
+
+ + vim.utility.surround.setupOpts.keymaps.change + + +
+
+

keymap for change

+ +

Type: +string

+ +

Default: +"gzr"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/surround/surround.nix> + +
+
+
+ + vim.utility.surround.setupOpts.keymaps.change_line + + +
+
+

keymap for change_line

+ +

Type: +string

+ +

Default: +"gZR"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/surround/surround.nix> + +
+
+
+ + vim.utility.surround.setupOpts.keymaps.delete + + +
+
+

keymap for delete

+ +

Type: +string

+ +

Default: +"gzd"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/surround/surround.nix> + +
+
+
+ + vim.utility.surround.setupOpts.keymaps.insert + + +
+
+

keymap for insert

+ +

Type: +string

+ +

Default: +"<C-g>z"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/surround/surround.nix> + +
+
+
+ + vim.utility.surround.setupOpts.keymaps.insert_line + + +
+
+

keymap for insert_line

+ +

Type: +string

+ +

Default: +"<C-g>Z"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/surround/surround.nix> + +
+
+
+ + vim.utility.surround.setupOpts.keymaps.normal + + +
+
+

keymap for normal

+ +

Type: +string

+ +

Default: +"gz"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/surround/surround.nix> + +
+
+
+ + vim.utility.surround.setupOpts.keymaps.normal_cur + + +
+
+

keymap for normal_cur

+ +

Type: +string

+ +

Default: +"gZ"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/surround/surround.nix> + +
+
+
+ + vim.utility.surround.setupOpts.keymaps.normal_cur_line + + +
+
+

keymap for normal_cur_line

+ +

Type: +string

+ +

Default: +"gZZ"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/surround/surround.nix> + +
+
+
+ + vim.utility.surround.setupOpts.keymaps.normal_line + + +
+
+

keymap for normal_line

+ +

Type: +string

+ +

Default: +"gzz"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/surround/surround.nix> + +
+
+
+ + vim.utility.surround.setupOpts.keymaps.visual + + +
+
+

keymap for visual

+ +

Type: +string

+ +

Default: +"gz"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/surround/surround.nix> + +
+
+
+ + vim.utility.surround.setupOpts.keymaps.visual_line + + +
+
+

keymap for visual_line

+ +

Type: +string

+ +

Default: +"gZ"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/surround/surround.nix> + +
+
+
+ + vim.utility.surround.useVendoredKeybindings + + +
+
+

Use alternative set of keybindings that avoids conflicts with other popular plugins, e.g. nvim-leap

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/surround/surround.nix> + +
+
+
+ + vim.utility.vim-wakatime.enable + + +
+
+

Whether to enable vim-wakatime: live code statistics.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/wakatime/vim-wakatime.nix> + +
+
+
+ + vim.utility.vim-wakatime.cli-package + + +
+
+

The package that should be used for wakatime-cli. Set as null to use the default path in $XDG_DATA_HOME

+ +

Type: +null or package

+ +

Default: +<derivation wakatime-cli-1.102.3>

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/utility/wakatime/vim-wakatime.nix> + +
+
+
+ + vim.viAlias + + +
+
+

Enable the vi alias for nvim

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/build/options.nix> + +
+
+
+ + vim.vimAlias + + +
+
+

Enable the vim alias for nvim

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/build/options.nix> + +
+
+
+ + vim.visuals.cellular-automaton.enable + + +
+
+

Whether to enable cellular-automaton to help you cope with stubborn code [cellular-automaton].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/cellular-automaton/cellular-automaton.nix> + +
+
+
+ + vim.visuals.cellular-automaton.animation.register + + +
+
+

Whether to enable registering configured animation(s) automatically.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/cellular-automaton/cellular-automaton.nix> + +
+
+
+ + vim.visuals.cellular-automaton.animation.setup + + +
+
+

Configuration used to generate an animation to be registered.

The final value for ca_config will be used to register a new +animation using require("cellular-automaton").register_animation(ca_config)

Warning

ca_config must eval to a valid Lua table. nvf does not and cannot +perform any kind of validation on your Lua code, so bogus values will +result in errors when the animation is registered.

+ +

Type: +luaInline

+ +

Default:

{
+  _type = "lua-inline";
+  expr = ''
+    local ca_config = {
+      fps = 50,
+      name = 'slide',
+    }
+    
+    -- init function is invoked only once at the start
+    -- config.init = function (grid)
+    --
+    -- end
+    
+    -- update function
+    ca_config.update = function (grid)
+    for i = 1, #grid do
+      local prev = grid[i][#(grid[i])]
+        for j = 1, #(grid[i]) do
+          grid[i][j], prev = prev, grid[i][j]
+        end
+      end
+      return true
+    end
+  '';
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/cellular-automaton/cellular-automaton.nix> + +
+
+
+ + vim.visuals.cellular-automaton.mappings.makeItRain + + +
+
+

Make it rain [cellular-automaton]

+ +

Type: +null or string

+ +

Default: +"<leader>fml"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/cellular-automaton/cellular-automaton.nix> + +
+
+
+ + vim.visuals.cinnamon-nvim.enable + + +
+
+

Whether to enable smooth scrolling for ANY command [cinnamon-nvim].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/cinnamon-nvim/cinnamon-nvim.nix> + +
+
+
+ + vim.visuals.cinnamon-nvim.setupOpts + + +
+
+

Option table to pass into the setup function of cinnamon.nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/cinnamon-nvim/cinnamon-nvim.nix> + +
+
+
+ + vim.visuals.cinnamon-nvim.setupOpts.keymaps.basic + + +
+
+

Whether to enable basic animation keymaps.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/cinnamon-nvim/cinnamon-nvim.nix> + +
+
+
+ + vim.visuals.cinnamon-nvim.setupOpts.keymaps.extra + + +
+
+

Whether to enable extra animation keymaps.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/cinnamon-nvim/cinnamon-nvim.nix> + +
+
+
+ + vim.visuals.cinnamon-nvim.setupOpts.options + + +
+
+

Scroll options

+ +

Type: +attribute set

+ +

Default:

{
+  count_only = false;
+  mode = "cursor";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/cinnamon-nvim/cinnamon-nvim.nix> + +
+
+
+ + vim.visuals.fidget-nvim.enable + + +
+
+

Whether to enable nvim LSP UI element [fidget-nvim].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts + + +
+
+

Option table to pass into the setup function of Fidget

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.integration.nvim-tree.enable + + +
+
+

Integrate with nvim-tree/nvim-tree.lua (if enabled)

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.integration.xcodebuild-nvim.enable + + +
+
+

Integrate with wojciech-kulik/xcodebuild.nvim (if enabled)

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.logger.float_precision + + +
+
+

Limit the number of decimals displayed for floats

+ +

Type: +floating point number

+ +

Default: +0.01

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.logger.level + + +
+
+

Minimum logging level

+ +

Type: +one of “debug”, “error”, “info”, “trace”, “warn”, “off”

+ +

Default: +"warn"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.logger.max_size + + +
+
+

Maximum log file size, in KB

+ +

Type: +signed integer

+ +

Default: +10000

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.logger.path + + +
+
+

Where Fidget writes its logs to

+ +

Type: +luaInline

+ +

Default:

{
+  _type = "lua-inline";
+  expr = ''
+    string.format("%s/fidget.nvim.log", vim.fn.stdpath("cache"))
+  '';
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.configs + + +
+
+

How to configure notification groups when instantiated

+ +

Type: +attribute set of (luaInline)

+ +

Default:

{
+  default = {
+    _type = "lua-inline";
+    expr = "require('fidget.notification').default_config";
+  };
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.filter + + +
+
+

Minimum notifications level

+ +

Type: +one of “debug”, “info”, “warn”, “error”

+ +

Default: +"info"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.history_size + + +
+
+

Number of removed messages to retain in history

+ +

Type: +signed integer

+ +

Default: +128

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.override_vim_notify + + +
+
+

Automatically override vim.notify() with Fidget

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.poll_rate + + +
+
+

How frequently to update and render notifications

+ +

Type: +signed integer

+ +

Default: +10

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.redirect + + +
+
+

Conditionally redirect notifications to another backend

+ +

Type: +luaInline

+ +

Default:

{
+  _type = "lua-inline";
+  expr = ''
+    function(msg, level, opts)
+      if opts and opts.on_open then
+        return require("fidget.integration.nvim-notify").delegate(msg, level, opts)
+      end
+    end
+  '';
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.view.group_separator + + +
+
+

Separator between notification groups

+ +

Type: +string

+ +

Default: +"---"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.view.group_separator_hl + + +
+
+

Highlight group used for group separator

+ +

Type: +string

+ +

Default: +"Comment"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.view.icon_separator + + +
+
+

Separator between group name and icon

+ +

Type: +string

+ +

Default: +" "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.view.render_message + + +
+
+

How to render notification messages

+ +

Type: +luaInline

+ +

Default:

{
+  _type = "lua-inline";
+  expr = ''
+    function(msg, cnt)
+      return cnt == 1 and msg or string.format("(%dx) %s", cnt, msg)
+    end
+  '';
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.view.stack_upwards + + +
+
+

Display notification items from bottom to top

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.window.align + + +
+
+

How to align the notification window

+ +

Type: +one of “top”, “bottom”

+ +

Default: +"bottom"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.window.border + + +
+
+

Border style of the notification window

+ +

Type: +one of “none”, “single”, “double”, “rounded”, “solid”, “shadow” or list of (string or list of string)

+ +

Default: +"none"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.window.max_height + + +
+
+

Maximum height of the notification window

+ +

Type: +signed integer

+ +

Default: +0

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.window.max_width + + +
+
+

Maximum width of the notification window

+ +

Type: +signed integer

+ +

Default: +0

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.window.normal_hl + + +
+
+

Base highlight group in the notification window

+ +

Type: +string

+ +

Default: +"Comment"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.window.relative + + +
+
+

What the notification window position is relative to

+ +

Type: +one of “editor”, “win”

+ +

Default: +"editor"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.window.winblend + + +
+
+

Background color opacity in the notification window

+ +

Type: +signed integer

+ +

Default: +100

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.window.x_padding + + +
+
+

Padding from right edge of window boundary

+ +

Type: +signed integer

+ +

Default: +1

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.window.y_padding + + +
+
+

Padding from bottom edge of window boundary

+ +

Type: +signed integer

+ +

Default: +0

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.notification.window.zindex + + +
+
+

Stacking priority of the notification window

+ +

Type: +signed integer

+ +

Default: +45

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.done_icon + + +
+
+

Icon shown when LSP progress tasks are completed

+ +

Type: +string

+ +

Default: +"✓"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.done_style + + +
+
+

Highlight group for completed LSP tasks

+ +

Type: +string

+ +

Default: +"Constant"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.done_ttl + + +
+
+

How long a message should persist when complete

+ +

Type: +signed integer

+ +

Default: +3

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.format_annote + + +
+
+

How to format a progress annotation

+ +

Type: +luaInline

+ +

Default:

{
+  _type = "lua-inline";
+  expr = ''
+    function(msg) return msg.title end
+  '';
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.format_group_name + + +
+
+

How to format a progress notification group’s name

+ +

Type: +luaInline

+ +

Default:

{
+  _type = "lua-inline";
+  expr = ''
+    function(group) return tostring(group) end
+  '';
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.format_message + + +
+
+

How to format a progress message

+ +

Type: +luaInline

+ +

Default:

{
+  _type = "lua-inline";
+  expr = ''
+    require("fidget.progress.display").default_format_message
+  '';
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.group_style + + +
+
+

Highlight group for group name (LSP server name)

+ +

Type: +string

+ +

Default: +"Title"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.icon_style + + +
+
+

Highlight group for group icons

+ +

Type: +string

+ +

Default: +"Question"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides + + +
+
+

Overrides the default configuration for a notification group defined +in vim.visuals.fidget-nvim.setupOpts.notification.configs.

If any of the fields are null, the value from the default +configuration is used.

If default configuration is not defined, the following defaults are used:

   {
+       name = "Notifications",
+       icon = "❰❰",
+       ttl = 5,
+       group_style = "Title",
+       icon_style = "Special",
+       annote_style = "Question",
+       debug_style = "Comment",
+       info_style = "Question",
+       warn_style = "WarningMsg",
+       error_style = "ErrorMsg",
+       debug_annote = "DEBUG",
+       info_annote = "INFO",
+       warn_annote = "WARN",
+       error_annote = "ERROR",
+       update_hook = function(item)
+         notification.set_content_key(item)
+       end,
+   }
+
+ +

Type: +attribute set of (submodule)

+ +

Default: +{ }

+ +

Example:

{
+  rust_analyzer = {
+    name = "Rust Analyzer";
+  };
+}
+
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.annote_separator + + +
+
+

Separator between message from annote

+ +

Type: +null or string

+ +

Default: +" "

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.annote_style + + +
+
+

Default style used to highlight item annotes

+ +

Type: +null or string

+ +

Default: +"Question"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.debug_annote + + +
+
+

Default annotation for debug items

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.debug_style + + +
+
+

Style used to highlight debug item annotes

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.error_annote + + +
+
+

Default annotation for error items

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.error_style + + +
+
+

Style used to highlight error item annotes

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.group_style + + +
+
+

Style used to highlight group name

+ +

Type: +null or string

+ +

Default: +"Title"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.icon + + +
+
+

Icon of the group, displayed in the notification window. +Can be a string or a function that returns a string.

If a function, it is invoked every render cycle with the items +list, useful for rendering animations and other dynamic content.

Note

If you’re looking for detailed information into the function +signature, you can refer to the fidget API documentation available +here

+ +

Type: +null or string or (luaInline)

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.icon_on_left + + +
+
+

If true, icon is rendered on the left instead of right

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.icon_style + + +
+
+

Style used to highlight icon, if null, use group_style

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.info_annote + + +
+
+

Default annotation for info items

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.info_style + + +
+
+

Style used to highlight info item annotes

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.name + + +
+
+

Name of the group, displayed in the notification window. +Can be a string or a function that returns a string.

If a function, it is invoked every render cycle with the items +list, useful for rendering animations and other dynamic content.

Note

If you’re looking for detailed information into the function +signature, you can refer to the fidget API documentation available +here

+ +

Type: +null or string or (luaInline)

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.priority + + +
+
+

Order in which group should be displayed

+ +

Type: +null or signed integer

+ +

Default: +50

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.render_limit + + +
+
+

How many notification items to show at once

+ +

Type: +null or signed integer

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.skip_history + + +
+
+

Whether messages should be preserved in history

+ +

Type: +null or boolean

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.ttl + + +
+
+

How long a notification item should exist

+ +

Type: +null or signed integer

+ +

Default: +5

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.update_hook + + +
+
+

Called when an item is updated.

If false, no action is taken. +If a function, it is invoked with the item being updated.

Note

If you’re looking for detailed information into the function +signature, you can refer to the fidget API documentation available +here

+ +

Type: +null or boolean or (luaInline)

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.warn_annote + + +
+
+

Default annotation for warn items

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.overrides.<name>.warn_style + + +
+
+

Style used to highlight warn item annotes

+ +

Type: +null or string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.priority + + +
+
+

Priority of the progress notification

+ +

Type: +signed integer

+ +

Default: +30

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.progress_icon.pattern + + +
+
+

Pattern shown when LSP progress tasks are in progress

+ +

Type: +one of “dots”, “dots_negative”, “dots_snake”, “dots_footsteps”, “dots_hop”, “line”, “pipe”, “dots_ellipsis”, “dots_scrolling”, “star”, “flip”, “hamburger”, “grow_vertical”, “grow_horizontal”, “noise”, “dots_bounce”, “triangle”, “arc”, “circle”, “square_corners”, “circle_quarters”, “circle_halves”, “dots_toggle”, “box_toggle”, “arrow”, “zip”, “bouncing_bar”, “bouncing_ball”, “clock”, “earth”, “moon”, “dots_pulse”, “meter”

+ +

Default: +"dots"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.progress_icon.period + + +
+
+

Period of the pattern

+ +

Type: +signed integer

+ +

Default: +1

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.progress_style + + +
+
+

Highlight group for in-progress LSP tasks

+ +

Type: +string

+ +

Default: +"WarningMsg"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.progress_ttl + + +
+
+

How long a message should persist when in progress

+ +

Type: +signed integer

+ +

Default: +99999

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.render_limit + + +
+
+

Maximum number of messages to render

+ +

Type: +signed integer

+ +

Default: +16

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.display.skip_history + + +
+
+

Skip adding messages to history

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.ignore + + +
+
+

Ignore LSP servers by name

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.ignore_done_already + + +
+
+

Ignore new tasks that are already done

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.ignore_empty_message + + +
+
+

Ignore new tasks with empty messages

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.lsp.log_handler + + +
+
+

Log $/progress handler invocations

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.lsp.progress_ringbuf_size + + +
+
+

Nvim’s LSP client ring buffer size

+ +

Type: +signed integer

+ +

Default: +100

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.notification_group + + +
+
+

How to get a progress message’s notification group key

+ +

Type: +luaInline

+ +

Default:

{
+  _type = "lua-inline";
+  expr = ''
+    function(msg)
+      return msg.lsp_client.name
+    end
+  '';
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.poll_rate + + +
+
+

How frequently to poll for LSP progress messages

+ +

Type: +signed integer

+ +

Default: +0

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.fidget-nvim.setupOpts.progress.suppress_on_insert + + +
+
+

Suppress new messages when in insert mode

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/fidget-nvim/fidget.nix> + +
+
+
+ + vim.visuals.highlight-undo.enable + + +
+
+

Whether to enable highlight undo [highlight-undo].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/highlight-undo/highlight-undo.nix> + +
+
+
+ + vim.visuals.highlight-undo.setupOpts + + +
+
+

Option table to pass into the setup function of highlight-undo

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/highlight-undo/highlight-undo.nix> + +
+
+
+ + vim.visuals.highlight-undo.setupOpts.duration + + +
+
+

Duration of the highlight

+ +

Type: +signed integer

+ +

Default: +500

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/highlight-undo/highlight-undo.nix> + +
+
+
+ + vim.visuals.indent-blankline.enable + + +
+
+

Whether to enable indentation guides [indent-blankline].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts + + +
+
+

Option table to pass into the setup function of indent-blankline

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.debounce + + +
+
+

Debounce time in milliseconds

+ +

Type: +signed integer

+ +

Default: +200

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.indent.char + + +
+
+

Character(s) for indentation guide

+ +

Type: +string or list of string

+ +

Default: +"│"

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.indent.highlight + + +
+
+

The highlight group(s) applied to the indentation guide.

See :help ibl.config.indent.highlight.

+ +

Type: +null or string or list of string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.indent.priority + + +
+
+

Virtual text priority for the indentation guide

+ +

Type: +signed integer

+ +

Default: +1

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.indent.repeat_linebreak + + +
+
+

Repeat indentation guides on wrapped lines

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.indent.smart_indent_cap + + +
+
+

Caps the number of indentation levels based on surrounding code

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.indent.tab_char + + +
+
+

Character(s) for tab indentation guide.

See :help ibl.config.indent.tab_char.

+ +

Type: +null or string or list of string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.scope.enabled + + +
+
+

Highlight current scope from treesitter

+ +

Type: +boolean

+ +

Default: +config.vim.treesitter.enable

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.scope.char + + +
+
+

The character(s) for the scope indentation guide

+ +

Type: +string or list of string

+ +

Default: +config.vim.visuals.indent-blankline.setupOpts.indent.char

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.scope.exclude.language + + +
+
+

The list of treesitter languages to disable scope for.

* can be used as a wildcard for every language/node type.

+ +

Type: +list of string

+ +

Default: +[ ]

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.scope.exclude.node_type + + +
+
+

Nodes to ignore in scope checking, per language.

* can be used as a wildcard for every language.

+ +

Type: +attribute set of list of string

+ +

Default:

{
+  "*" = [
+    "source_file"
+    "program"
+  ];
+  lua = [
+    "chunk"
+  ];
+  python = [
+    "module"
+  ];
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.scope.highlight + + +
+
+

The highlight group(s) applied to the scope.

See :help ibl.config.scope.highlight`.

+ +

Type: +null or string or list of string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.scope.include.node_type + + +
+
+

Additional nodes to be used for scope checking, per language

+ +

Type: +attribute set of list of string

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.scope.injected_languages + + +
+
+

Check for injected languages (treesitter)

+ +

Type: +boolean

+ +

Default: +config.vim.treesitter.enable

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.scope.priority + + +
+
+

Virtual text priority for the scope

+ +

Type: +signed integer

+ +

Default: +1024

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.scope.show_end + + +
+
+

Show an underline on the last line of the scope

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.scope.show_exact_scope + + +
+
+

Show the scope underline at the exact start of the scope, even if that’s to the right of the indentation guide

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.scope.show_start + + +
+
+

Show an underline on the first line of the scope

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.viewport_buffer.max + + +
+
+

Number of lines above and below of what is currently +visible in the window

+ +

Type: +signed integer

+ +

Default: +500

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.viewport_buffer.min + + +
+
+

Number of lines above and below of what is currently +visible in the window

+ +

Type: +signed integer

+ +

Default: +30

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.whitespace.highlight + + +
+
+

The highlight group(s) applied to whitespace.

See :help ibl.config.whitespace.highlight.

+ +

Type: +null or string or list of string

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.indent-blankline.setupOpts.whitespace.remove_blankline_trail + + +
+
+

Remove trailing whitespace on blanklines

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/indent-blankline/indent-blankline.nix> + +
+
+
+ + vim.visuals.nvim-cursorline.enable + + +
+
+

Whether to enable cursor word and line highlighting [nvim-cursorline].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-cursorline/nvim-cursorline.nix> + +
+
+
+ + vim.visuals.nvim-cursorline.setupOpts + + +
+
+

Option table to pass into the setup function of nvim-cursorline

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-cursorline/nvim-cursorline.nix> + +
+
+
+ + vim.visuals.nvim-cursorline.setupOpts.cursorline.enable + + +
+
+

Whether to enable cursor line highlighting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-cursorline/nvim-cursorline.nix> + +
+
+
+ + vim.visuals.nvim-cursorline.setupOpts.cursorline.number + + +
+
+

If true, vim.wo.cursorlineopt will be set to “number” +when the trigger conditions are met.

+ +

Type: +boolean

+ +

Default: +false

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-cursorline/nvim-cursorline.nix> + +
+
+
+ + vim.visuals.nvim-cursorline.setupOpts.cursorline.timeout + + +
+
+

Cursorline timeout

+ +

Type: +signed integer

+ +

Default: +1000

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-cursorline/nvim-cursorline.nix> + +
+
+
+ + vim.visuals.nvim-cursorline.setupOpts.cursorword.enable + + +
+
+

Whether to enable cursor word highlighting.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-cursorline/nvim-cursorline.nix> + +
+
+
+ + vim.visuals.nvim-cursorline.setupOpts.cursorword.hl.underline + + +
+
+

Whether to underline matching cursorword

+ +

Type: +boolean

+ +

Default: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-cursorline/nvim-cursorline.nix> + +
+
+
+ + vim.visuals.nvim-cursorline.setupOpts.cursorword.min_length + + +
+
+

The min_length option defines the minimum number of characters +a word must have to be highlighted as a “cursor word.” Any word +shorter than this value will be ignored and not highlighted.

+ +

Type: +signed integer

+ +

Default: +3

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-cursorline/nvim-cursorline.nix> + +
+
+
+ + vim.visuals.nvim-cursorline.setupOpts.cursorword.timeout + + +
+
+

Cursorword timeout

+ +

Type: +signed integer

+ +

Default: +1000

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-cursorline/nvim-cursorline.nix> + +
+
+
+ + vim.visuals.nvim-scrollbar.enable + + +
+
+

Whether to enable extensible Neovim Scrollbar [nvim-scrollbar].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-scrollbar/scrollbar-nvim.nix> + +
+
+
+ + vim.visuals.nvim-scrollbar.setupOpts + + +
+
+

Option table to pass into the setup function of scrollbar-nvim

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-scrollbar/scrollbar-nvim.nix> + +
+
+
+ + vim.visuals.nvim-scrollbar.setupOpts.excluded_filetypes + + +
+
+

Filetypes to hide the scrollbar on

+ +

Type: +list of string

+ +

Default:

[
+  "prompt"
+  "TelescopePrompt"
+  "noice"
+  "noice"
+  "NvimTree"
+  "neo-tree"
+  "alpha"
+  "notify"
+  "Navbuddy"
+]
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-scrollbar/scrollbar-nvim.nix> + +
+
+
+ + vim.visuals.nvim-web-devicons.enable + + +
+
+

Whether to enable Neovim dev icons [nvim-web-devicons].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-web-devicons/nvim-web-devicons.nix> + +
+
+
+ + vim.visuals.nvim-web-devicons.setupOpts + + +
+
+

Option table to pass into the setup function of nvim-web-devicons

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-web-devicons/nvim-web-devicons.nix> + +
+
+
+ + vim.visuals.nvim-web-devicons.setupOpts.color_icons + + +
+
+

Whether to enable different highlight colors per icon.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-web-devicons/nvim-web-devicons.nix> + +
+
+
+ + vim.visuals.nvim-web-devicons.setupOpts.override + + +
+
+

Your personal icon overrides.

You can specify color or cterm_color instead of specifying +both of them. DevIcon will be appended to name

+ +

Type: +attribute set of (attribute set)

+ +

Default: +{ }

+ +

Example:

{
+  zsh = {
+    name = "Zsh";
+    icon = "";
+    color = "#428850";
+    cterm_color = "65";
+  };
+}
+
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-web-devicons/nvim-web-devicons.nix> + +
+
+
+ + vim.visuals.nvim-web-devicons.setupOpts.variant + + +
+
+

Set the light or dark variant manually, instead of relying on background

+ +

Type: +null or one of “light”, “dark”

+ +

Default: +null

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/nvim-web-devicons/nvim-web-devicons.nix> + +
+
+
+ + vim.visuals.tiny-devicons-auto-colors.enable + + +
+
+

Whether to enable alternative nvim-web-devicons icon colors [tiny-devicons-auto-colors].

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/tiny-devicons-auto-colors/tiny-devicons-auto-colors.nix> + +
+
+
+ + vim.visuals.tiny-devicons-auto-colors.setupOpts + + +
+
+

Option table to pass into the setup function of tiny-devicons-auto-colors

You can pass in any additional options even if they’re +not listed in the docs

+ +

Type: +anything

+ +

Default: +{ }

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/tiny-devicons-auto-colors/tiny-devicons-auto-colors.nix> + +
+
+
+ + vim.visuals.tiny-devicons-auto-colors.setupOpts.factors.cache.enabled + + +
+
+

Whether to enable caching of icon colors. This will greatly improve performance.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/tiny-devicons-auto-colors/tiny-devicons-auto-colors.nix> + +
+
+
+ + vim.visuals.tiny-devicons-auto-colors.setupOpts.factors.cache.path + + +
+
+

Path to the cache file

+ +

Type: +luaInline

+ +

Default:

{
+  _type = "lua-inline";
+  expr = "vim.fn.stdpath(\"cache\") .. \"/tiny-devicons-auto-colors-cache.json\"";
+}
+
+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/tiny-devicons-auto-colors/tiny-devicons-auto-colors.nix> + +
+
+
+ + vim.visuals.tiny-devicons-auto-colors.setupOpts.factors.chroma + + +
+
+

Chroma factor of icons

+ +

Type: +signed integer

+ +

Default: +1

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/tiny-devicons-auto-colors/tiny-devicons-auto-colors.nix> + +
+
+
+ + vim.visuals.tiny-devicons-auto-colors.setupOpts.factors.hue + + +
+
+

Hue factor of icons

+ +

Type: +floating point number

+ +

Default: +1.25

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/tiny-devicons-auto-colors/tiny-devicons-auto-colors.nix> + +
+
+
+ + vim.visuals.tiny-devicons-auto-colors.setupOpts.factors.lightness + + +
+
+

Lightness factor of icons

+ +

Type: +floating point number

+ +

Default: +1.76

+ +

Declared by:

+ + +
+ +<nvf/modules/plugins/visuals/tiny-devicons-auto-colors/tiny-devicons-auto-colors.nix> + +
+
+
+ + vim.withNodeJs + + +
+
+

Whether to enable NodeJs support in the Neovim wrapper +.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/build/options.nix> + +
+
+
+ + vim.withPython3 + + +
+
+

Whether to enable Python3 support in the Neovim wrapper +.

+ +

Type: +boolean

+ +

Default: +false

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/build/options.nix> + +
+
+
+ + vim.withRuby + + +
+
+

Whether to enable Ruby support in the Neovim wrapper. +.

+ +

Type: +boolean

+ +

Default: +true

+ +

Example: +true

+ +

Declared by:

+ + +
+ +<nvf/modules/wrapper/build/options.nix> + +
+
+
+
+
+ + \ No newline at end of file diff --git a/docs-preview-494/quirks.html b/docs-preview-494/quirks.html new file mode 100644 index 00000000..4ff1fa95 --- /dev/null +++ b/docs-preview-494/quirks.html @@ -0,0 +1,56 @@ + + + + + + Appendix A. Known Issues and Quirks + + + + + + + +

Appendix A. Known Issues and Quirks

Table of Contents

NodeJS

At times, certain plugins and modules may refuse to play nicely with your setup, +be it a result of generating Lua from Nix, or the state of packaging. This page, +in turn, will list any known modules or plugins that are known to misbehave, and +possible workarounds that you may apply.

NodeJS

Table of Contents

eslint-plugin-prettier

eslint-plugin-prettier

When working with NodeJS, everything works as expected, but some projects have +settings that can fool nvf.

If this plugin or similar +is included, you might get a situation where your eslint configuration diagnoses +your formatting according to its own config (usually .eslintrc.js).

The issue there is your formatting is made via prettierd.

This results in auto-formatting relying on your prettier config, while your +eslint config diagnoses formatting +which it’s not supposed to)

In the end, you get discrepancies between what your editor does and what it +wants.

Solutions are:

  1. Don’t add a formatting config to eslint, and separate prettier and eslint.

  2. PR this repo to add an ESLint formatter and configure nvf to use it.

+
+ +
+
+ + \ No newline at end of file diff --git a/docs-preview-494/release-notes.html b/docs-preview-494/release-notes.html new file mode 100644 index 00000000..b581e62c --- /dev/null +++ b/docs-preview-494/release-notes.html @@ -0,0 +1,383 @@ + + + + + + Appendix C. Release Notes + + + + + + + +

Appendix C. Release Notes

This section lists the release notes for tagged version of nvf and the +current main current main branch

Release 0.1

Table of Contents

Changelog

This is the current master branch and information here is not final. These are +changes from the v0.1 tag.

Special thanks to home-manager +for this release. Docs/manual generation, the new module evaluation system, and +DAG implementation are from them.

Changelog

jordanisaacs:

  • Removed hare language support (lsp/tree-sitter/etc). vim.lsp.hare is no +longer defined. If you use hare and would like it added back, please file an +issue.

  • vim.startPlugins & vim.optPlugins are now an enum of +string for options sourced from the flake inputs. Users can still provide +vim plugin packages.

    • If you are contributing and adding a new plugin, add the plugin name to +availablePlugins in [types-plugin.nix].

  • neovimBuilder has been removed for configuration. Using an overlay is no +longer required. See the manual for the new way to configuration.

  • Treesitter grammars are now configurable with +vim.treesitter.grammars. Utilizes the nixpkgs nvim-treesitter +plugin rather than a custom input in order to take advantage of build support +of pinned versions. See the relevant discourse post for more information. +Packages can be found under the vimPlugins.nvim-treesitter.builtGrammars +namespace.

  • vim.configRC and vim.luaConfigRC are now of type DAG lines. This +allows for ordering of the config. Usage is the same is in home-manager’s +home.activation option.

vim.luaConfigRC = lib.nvim.dag.entryAnywhere "config here"
+

MoritzBoehme:

+
+ +

Release 0.2

Table of Contents

Changelog

Release notes for release 0.2

Changelog

notashelf:

  • Added two minimap plugins under vim.minimap. codewindow.nvim is enabled by +default, while minimap.vim is available with its code-minimap dependency.

  • A complementary plugin, obsidian.nvim and the Neovim alternative for Emacs’ +orgmode with orgmode.nvim have been added. Both will be disabled by default.

  • Smooth scrolling for ANY movement command is now available with +cinnamon.nvim

  • You will now notice a dashboard on startup. This is provided by the +alpha.nvim plugin. You can use any of the three available dashboard plugins, +or disable them entirely.

  • There is now a scrollbar on active buffers, which can highlight errors by +hooking to your LSPs. This is on by default, but can be toggled off under +vim.visuals if seen necessary.

  • Discord Rich Presence has been added through presence.nvim for those who +want to flex that they are using the superior text editor.

  • An icon picker is now available with telescope integration. You can use +:IconPickerInsert or :IconPickerYank to add icons to your code.

  • A general-purpose cheatsheet has been added through cheatsheet.nvim. Forget +no longer!

  • ccc.nvim has been added to the default plugins to allow picking colors with +ease.

  • Most UI components of Neovim have been replaced through the help of +noice.nvim. There are also notifications and custom UI elements available +for Neovim messages and prompts.

  • A (floating by default) terminal has been added through toggleterm.nvim.

  • Harness the power of ethical (tabnine.nvim) and not-so-ethical +(copilot.lua) AI by those new assistant plugins. Both are off by default, +TabNine needs to be wrapped before it’s working.

  • Experimental mouse gestures have been added through gesture.nvim. See plugin +page and the relevant module for more details on how to use.

  • Re-open last visited buffers via nvim-session-manager. Disabled by default +as deleting buffers seems to be problematic at the moment.

  • Most of NvimTree’s configuration options have been changed with some options +being toggled to off by default.

  • Lualine had its configuration simplified and style toned down. Less color, +more info.

  • Modules where multiple plugin configurations were in the same directory have +been simplified. Each plugin inside a single module gets its directory to be +imported.

  • Separate config options with the same parent attribute have been merged into +one for simplicity.

+
+ +

Release 0.3

Table of Contents

Changelog

Release 0.3 had to come out before I wanted it to due to Neovim 0.9 dropping +into nixpkgs-unstable. The Treesitter changes have prompted a Treesitter rework, +which was followed by reworking the languages system. Most of the changes to +those are downstreamed from the original repository. The feature requests that +was originally planned for 0.3 have been moved to 0.4, which should come out +soon.

Changelog

  • We have transitioned to flake-parts, from flake-utils to extend the +flexibility of this flake. This means the flake structure is different than +usual, but the functionality remains the same.

  • We now provide a home-manager module. Do note that it is still far from +perfect, but it works.

  • nodejs_16 is now bundled with Copilot.lua if the user has enabled Copilot +assistant.

  • which-key section titles have been fixed. This is to be changed once again in +a possible keybind rewrite, but now it should display the correct titles +instead of +prefix

  • Most of presence.nvim’s options have been made fully configurable through +your configuration file.

  • Most of the modules have been refactored to separate config and options +attributes.

  • Darwin has been deprecated as the Zig package is marked as broken. We will +attempt to use the Zig overlay to return Darwin support.

  • Fidget.nvim has been added as a neat visual addition for LSP installations.

  • diffview.nvim has been added to provide a convenient diff utility.

  • Treesitter grammars are now configurable with +vim.treesitter.grammars. Utilizes the nixpkgs nvim-treesitter +plugin rather than a custom input in order to take advantage of build support +of pinned versions. See discourse for more information. Packages can be +found under the pkgs.vimPlugins.nvim-treesitter.builtGrammars attribute. +Treesitter grammars for supported languages should be enabled within the +module. By default no grammars are installed, thus the following grammars +which do not have a language section are not included anymore: comment, +toml, make, html, css, graphql, json.

  • A new section has been added for language support: vim.languages.<language>.

  • vim.git.gitsigns.codeActions has been added, allowing you to turn on +Gitsigns’ code actions.

  • Removed the plugins document in the docs. Was too unwieldy to keep updated.

  • vim.visual.lspkind has been moved to vim.lsp.lspkind.enable

  • Improved handling of completion formatting. When setting +vim.autocomplete.sources, can also include optional menu mapping. And can +provide your own function with vim.autocomplete.formatting.format.

  • For vim.visuals.indentBlankline.fillChar and +vim.visuals.indentBlankline.eolChar options, turning them off should be done +by using null rather than "" now.

  • Transparency has been made optional and has been disabled by default. +vim.theme.transparent option can be used to enable or disable +transparency for your configuration.

  • Fixed deprecated configuration method for Tokyonight, and added new style +“moon”

  • Dart language support as well as extended flutter support has been added. +Thanks to @FlafyDev for his contributions towards Dart language support.

  • Elixir language support has been added through elixir-tools.nvim.

  • hop.nvim and leap.nvim have been added for fast navigation.

  • modes.nvim has been added to the UI plugins as a minor error highlighter.

  • smartcollumn.nvim has been added to dynamically display a colorcolumn when +the limit has been exceeded, providing per-buftype column position and more.

  • project.nvim has been added for better project management inside Neovim.

  • More configuration options have been added to nvim-session-manager.

  • Editorconfig support has been added to the core functionality, with an enable +option.

  • venn-nvim has been dropped due to broken keybinds.

+
+ +

Release 0.4

Table of Contents

Changelog

Following the release of v0.3, I have decided to release v0.4 with a massive new +change: customizable keybinds. As of the 0.4 release, keybinds will no longer be +hardcoded and instead provided by each module’s own keybinds section. The old +keybind system (vim.keybinds = {}) is now considered deprecated and the new +lib functions are recommended to be used for adding keybinds for new plugins, or +adding keybinds to existing plugins.

Alongside customizable keybinds, there are a few quality of life updates, such +as lazygit integration and the new experimental Lua loader of Neovim 0.9 +thanks to our awesome contributors who made this update possible during my +absence.

Changelog

n3oney:

  • Streamlined keybind adding process towards new functions in extended stdlib.

  • Moved default keybinds into keybinds section of each module

  • Simplified luaConfigRC and configRC setting - they can now just take strings

  • Refactored the resolveDag function - you can just provide a string now, which +will default to dag.entryAnywhere

  • Fixed formatting sometimes removing parts of files

  • Made formatting synchronous

  • Gave null-ls priority over other formatters

horriblename:

  • Added clangd as alternative lsp for C/++.

  • Added toggleterm integration for lazygit.

  • Added new option enableluaLoader to enable neovim’s experimental module +loader for faster startup time.

  • Fixed bug where flutter-tools can’t find dart LSP

  • Added Debug Adapter (DAP) support for clang, rust, go, python and dart.

notashelf:

  • Made Copilot’s Node package configurable. It is recommended to keep as +default, but providing a different NodeJS version is now possible.

  • Added vim.cursorlineOpt for configuring Neovim’s vim.o.cursorlineopt.

  • Added filetree.nvimTreeLua.view.cursorline, default false, to enable +cursorline in nvimtre.

  • Added Fidget.nvim support for the Catppuccin theme.

  • Updated bundled NodeJS version used by Copilot.lua. v16 is now marked as +insecure on Nixpkgs, and we updated to v18

  • Enabled Catppuccin modules for plugins available by default.

  • Added experimental Svelte support under vim.languages.

  • Removed unnecessary scrollbar element from notifications and codeaction +warning UI.

  • vim.utility.colorizer has been renamed to vim.utility.ccc after the plugin +it uses

  • Color preview via nvim-colorizer.lua

  • Updated Lualine statusline UI

  • Added vim-illuminate for smart highlighting

  • Added a module for enabling Neovim’s spellchecker

  • Added prettierd as an alternative formatter to prettier - currently defaults +to prettier

  • Fixed presence.nvim inheriting the wrong client id

  • Cleaned up documentation

+
+ +

Release 0.5

Table of Contents

Changelog

Release notes for release 0.5

Changelog

vagahbond:

  • Added phan language server for PHP

  • Added phpactor language server for PHP

horriblename:

  • Added transparency support for tokyonight theme

  • Fixed a bug where cmp’s close and scrollDocs mappings wasn’t working

  • Streamlined and simplified extra plugin API with the addition of +vim.extraPlugins

  • Allow using command names in place of LSP packages to avoid automatic +installation

  • Add lua LSP and Treesitter support, and neodev.nvim plugin support

  • Add vim.lsp.mappings.toggleFormatOnSave keybind

amanse:

  • Added daily notes options for obsidian plugin

  • Added jdt-language-server for Java

yavko:

  • Added Deno Language Server for Javascript/Typescript

  • Added support for multiple languages under vim.spellChecking.languages, and +added vim-dirtytalk through vim.spellChecking.enableProgrammingWordList

frothymarrow:

  • Renamed vim.visuals.cursorWordline to vim.visuals.cursorline.enable

  • Added vim.visuals.cursorline.lineNumbersOnly to display cursorline only in +the presence of line numbers

  • Added Oxocarbon to the list of available themes.

notashelf:

  • Added GitHub Copilot to nvim-cmp completion sources.

  • Added vim.ui.borders.enable for global and individual plugin border +configuration.

  • LSP integrated breadcrumbs with vim.ui.breadcrumbs.enable through +nvim-navic

  • LSP navigation helper with nvim-navbuddy, depends on nvim-navic (automatically +enabled if navic is enabled)

  • Added nvim-navic integration for Catppuccin theme

  • Fixed mismatching Zig language description

  • Added support for statix and deadnix through +vim.languages.nix.extraDiagnostics.types

  • Added lsp_lines plugin for showing diagnostic messages

  • Added a configuration option for choosing the leader key

  • The package used for neovim is now customizable by the user, using +vim.package. For best results, always use an unwrapped package

  • Added highlight-undo plugin for highlighting undo/redo targets

  • Added bash LSP and formatter support

  • Disabled Lualine LSP status indicator for Toggleterm buffer

  • Added nvim-docs-view, a plugin to display LSP hover documentation in a side +panel

  • Switched to nixosOptionsDoc in option documentation. To quote home-manager +commit: “Output is mostly unchanged aside from some minor typographical and +formatting changes, along with better source links.”

  • Updated indent-blankine.nvim to v3 - this comes with a few option changes, +which will be migrated with renamedOptionModule

jacekpoz:

  • Fixed scrollOffset not being used

  • Updated clangd to 16

  • Disabled useSystemClipboard by default

ksonj:

  • Add support to change mappings to utility/surround

  • Add black-and-isort python formatter

  • Removed redundant “Enable …” in mkEnableOption descriptions

  • Add options to modify LSP key bindings and add proper which-key descriptions

  • Changed type of statusline.lualine.activeSection and +statusline.lualine.inactiveSection from attrsOf str to +attrsOf (listOf str)

  • Added statusline.lualine.extraActiveSection and +statusline.lualine.extraInactiveSection

+
+ +

Release 0.6

Release notes for release 0.6

Breaking Changes and Migration Guide

In v0.6 we are introducing setupOpts: many plugin related options are moved +into their respective setupOpts submodule, e.g. nvimTree.disableNetrw is +renamed to nvimTree.setupOpts.disable_netrw.

Why? in short, you can now pass in anything to setupOpts and it will be passed +to your require'plugin'.setup{...}. No need to wait for us to support every +single plugin option.

The warnings when you rebuild your config should be enough to guide you through +what you need to do, if there’s an option that was renamed but wasn’t listed in +the warning, please file a bug report!

To make your migration process less annoying, here’s a keybind that will help +you with renaming stuff from camelCase to snake_case (you’ll be doing that a +lot):

-- paste this in a temp.lua file and load it in vim with :source /path/to/temp.lua
+function camelToSnake()
+    -- Get the current word under the cursor
+    local word = vim.fn.expand("<cword>")
+    -- Replace each capital letter with an underscore followed by its lowercase equivalent
+    local snakeCase = string.gsub(word, "%u", function(match)
+        return "_" .. string.lower(match)
+    end)
+    -- Remove the leading underscore if present
+    if string.sub(snakeCase, 1, 1) == "_" then
+        snakeCase = string.sub(snakeCase, 2)
+    end
+    vim.fn.setreg(vim.v.register, snakeCase)
+    -- Select the word under the cursor and paste
+    vim.cmd("normal! viwP")
+end
+
+vim.api.nvim_set_keymap('n', '<leader>a', ':lua camelToSnake()<CR>', { noremap = true, silent = true })
+
+

Changelog

ksonj:

  • Added Terraform language support.

  • Added ChatGPT.nvim, which can be enabled with +vim.assistant.chatgpt.enable. Do keep in mind that this option +requires OPENAI_API_KEY environment variable to be set.

donnerinoern:

  • Added Gruvbox theme.

  • Added marksman LSP for Markdown.

  • Fixed markdown preview with Glow not working and added an option for changing +the preview keybind.

  • colorizer.nvim: switched to a maintained fork.

  • Added markdown-preview.nvim, moved glow.nvim to a brand new +vim.utility.preview category.

elijahimmer

  • Added rose-pine theme.

jacekpoz:

  • Added vim.autocomplete.alwaysComplete. Allows users to have the autocomplete +window popup only when manually activated.

horriblename:

  • Fixed empty winbar when breadcrumbs are disabled.

  • Added custom setupOpts for various plugins.

  • Removed support for deprecated plugin “nvim-compe”.

  • Moved most plugins to setupOpts method.

frothymarrow:

  • Added option vim.luaPackages to wrap neovim with extra Lua packages.

  • Rewrote the entire fidget.nvim module to include extensive configuration +options. Option vim.fidget-nvim.align.bottom has been removed in favor of +vim.fidget-nvim.notification.window.align, which now supports top and +bottom values. vim.fidget-nvim.align.right has no longer any equivalent +and also has been removed.

  • which-key.nvim categories can now be customized through +vim.binds.whichKey.register

  • Added magick to vim.luaPackages for image.nvim.

  • Added alejandra to the default devShell.

  • Migrated neovim-flake to makeNeovimUnstable wrapper.

notashelf:

  • Finished moving to nixosOptionsDoc in the documentation and changelog. All +documentation options and files are fully free of Asciidoc, and will now use +Nixpkgs flavored markdown.

  • Bumped plugin inputs to their latest versions.

  • Deprecated presence.nvim in favor of neocord. This means +vim.rich-presence.presence-nvim is removed and will throw a warning if used. +You are recommended to rewrite your neocord configuration from scratch based +on the. official documentation

  • Removed Tabnine plugin due to the usage of imperative tarball downloads. If +you’d like to see it back, please create an issue.

  • Added support for css and tailwindcss through +vscode-language-servers-extracted & tailwind-language-server. Those can be +enabled through vim.languages.css and vim.languages.tailwind.

  • Lualine module now allows customizing always_divide_middle, ignore_focus +and disabled_filetypes through the new options: +vim.statusline.lualine.alwaysDivideMiddle, +vim.statusline.lualine.ignoreFocus +and +vim.statusline.lualine.disabledFiletypes.

  • Updated all plugin inputs to their latest versions (21.04.2024) - this +brought minor color changes to the Catppuccin theme.

  • Moved home-manager module entrypoint to flake/modules and added an +experimental Nixos module. This requires further testing before it can be +considered ready for use.

  • Made lib calls explicit. E.g. lib.strings.optionalString instead of +lib.optionalString. This is a pattern expected to be followed by all +contributors in the future.

  • Added image.nvim for image previews.

  • The final neovim package is now exposed. This means you can build the neovim +package that will be added to your package list without rebuilding your system +to test if your configuration yields a broken package.

  • Changed the tree structure to distinguish between core options and plugin +options.

  • Added plugin auto-discovery from plugin inputs. This is mostly from +JordanIsaac’s neovim-flake. +Allows contributors to add plugin inputs with the plugin- prefix to have +them automatically discovered for the plugin type in lib/types.

  • Moved internal wrapLuaConfig to the extended library, structured its +arguments to take luaBefore, luaConfig and luaAfter as strings, which +are then concatted inside a lua block.

  • Added vim.luaConfigPre and vim.luaConfigPost for inserting +verbatim Lua configuration before and after the resolved Lua DAG respectively. +Both of those options take strings as the type, so you may read the contents +of a Lua file from a given path.

  • Added vim.spellchecking.ignoredFiletypes and +vim.spellChecking.programmingWordlist.enable for ignoring certain filetypes +in spellchecking and enabling vim-dirtytalk respectively. The previously +used vim.spellcheck.vim-dirtytalk aliases to the latter option.

  • Exposed withRuby, withNodeJs, withPython3, and python3Packages from +the makeNeovimConfig function under their respective options.

  • Added vim.extraPackages for appending additional packages to the +wrapper PATH, making said packages available while inside the Neovim session.

  • Made Treesitter options configurable, and moved treesitter-context to +setupOpts while it is enabled.

  • Added vim.notify.nvim-notify.setupOpts.render which takes either a +string of enum, or a Lua function. The default is “compact”, but you may +change it according to nvim-notify documentation.

+
+ +

Release 0.7

Release notes for release 0.7

Breaking Changes and Migration Guide

vim.configRC removed

In v0.7 we are removing vim.configRC in favor of making vim.luaConfigRC the +top-level DAG, and thereby making the entire configuration Lua based. This +change introduces a few breaking changes:

  • vim.configRC has been removed, which means that you have to convert all of +your custom vimscript-based configuration to Lua. As for how to do that, you +will have to consult the Neovim documentation and your search engine.

  • After migrating your Vimscript-based configuration to Lua, you might not be +able to use the same entry names in vim.luaConfigRC, because those have also +slightly changed. See the new DAG entries in nvf manual for more details.

Why?

Neovim being an aggressive refactor of Vim, is designed to be mainly Lua based; +making good use of its extensive Lua API. Additionally, Vimscript is slow and +brings unnecessary performance overhead while working with different +configuration formats.

+

vim.maps rewrite

Instead of specifying map modes using submodules (eg.: vim.maps.normal), a new +vim.keymaps submodule with support for a mode option has been introduced. It +can be either a string, or a list of strings, where a string represents the +short-name of the map mode(s), that the mapping should be set for. See +:help map-modes for more information.

For example:

vim.maps.normal."<leader>m" = { ... };
+

has to be replaced by

vim.keymaps = [
+  {
+    key = "<leader>m";
+    mode = "n";
+  }
+  ...
+];
+
+

vim.lsp.nvimCodeActionMenu removed in favor of vim.ui.fastaction

The nvim-code-action-menu plugin has been archived and broken for a long time, +so it’s being replaced with a young, but better alternative called +fastaction.nvim. Simply remove everything set under +vim.lsp.nvimCodeActionMenu, and set vim.ui.fastaction.enable to true.

Note that we are looking to add more alternatives in the future like +dressing.nvim and actions-preview.nvim, in case fastaction doesn’t work for +everyone.

+

type based modules removed

As part of the autocompletion rewrite, modules that used to use a type option +have been replaced by per-plugin modules instead. Since both modules only had +one type, you can simply change

  • vim.autocomplete.* -> vim.autocomplete.nvim-cmp.*

  • vim.autopairs.enable -> vim.autopairs.nvim-autopairs.enable

+

nixpkgs-fmt removed in favor of nixfmt

nixpkgs-fmt has been archived for a while, and it’s finally being removed in +favor of nixfmt (more information can be found +here.

To migrate to nixfmt, simply change vim.languages.nix.format.type to +nixfmt.

+

leader changes

This has been deprecated in favor of using the more generic vim.globals (you +can use vim.globals.mapleader to change this instead).

Rust specific keymaps now use maplocalleader instead of localleader by +default. This is to avoid conflicts with other modules. You can change +maplocalleader with vim.globals.maplocalleader, but it’s recommended to set +it to something other than mapleader to avoid conflicts.

+

vim.* changes

Inline with the leader changes, we have removed some +options that were under vim as convenient shorthands for vim.o.* options.

Warning

As v0.7 features the addition of vim.options, those options are now +considered as deprecated. You should migrate to the appropriate options in the +vim.options submodule.

The changes are, in no particular order:

  • colourTerm, mouseSupport, cmdHeight, updateTime, mapTime, +cursorlineOpt, splitBelow, splitRight, autoIndent and wordWrap have +been mapped to their vim.options equivalents. Please see the module +definition for the updated options.

  • tabWidth has been removed as it lead to confusing behaviour. You can +replicate the same functionality by setting shiftwidth, tabstop and +softtabstop under vim.options as you see fit.

+
+ +

Changelog

ItsSorae:

  • Add support for typst under vim.languages.typst This +will enable the typst-lsp language server, and the typstfmt formatter

frothymarrow:

horriblename:

  • Fix broken treesitter-context keybinds in visual mode

  • Deprecate use of __empty to define empty tables in Lua. Empty attrset are no +longer filtered and thus should be used instead.

  • Add dap-go for better dap configurations

  • Make noice.nvim customizable

  • Standardize border style options and add custom borders

  • Remove vim.disableDefaultRuntimePaths in wrapper options.

    • As nvf uses $NVIM_APP_NAME as of recent changes, we can safely assume any +configuration in $XDG_CONFIG_HOME/nvf is intentional.

  • Switch from rust-tools.nvim to the more feature-packed rustaceanvim. This +switch entails a whole bunch of new features and options, so you are +recommended to go through rustacean.nvim’s README to take a closer look at its +features and usage

  • Add lz.n support and lazy-load some builtin plugins.

  • Add simpler helper functions for making keymaps

jacekpoz:

diniamo:

  • Move the theme dag entry to before luaScript.

  • Add rustfmt as the default formatter for Rust.

  • Enabled the terminal integration of catppuccin for theming Neovim’s built-in +terminal (this also affects toggleterm).

  • Migrate bufferline to setupOpts for more customizability

  • Use clangd as the default language server for C languages

  • Expose lib.nvim.types.pluginType, which for example allows the user to +create abstractions for adding plugins

  • Migrate indent-blankline to setupOpts for more customizability. While the +plugin’s options can now be found under indentBlankline.setupOpts, the +previous iteration of the module also included out of place/broken options, +which have been removed for the time being. These are:

    • listChar - this was already unused

    • fillChar - this had nothing to do with the plugin, please configure it +yourself by adding vim.opt.listchars:append({ space = '<char>' }) to your +lua configuration

    • eolChar - this also had nothing to do with the plugin, please configure it +yourself by adding vim.opt.listchars:append({ eol = '<char>' }) to your +lua configuration

  • Replace vim.lsp.nvimCodeActionMenu with vim.ui.fastaction, see the +breaking changes section above for more details

  • Add a setupOpts option to nvim-surround, which allows modifying options that +aren’t defined in nvf. Move the alternate nvim-surround keybinds to use +setupOpts.

  • Remove autopairs.type, and rename autopairs.enable to +autopairs.nvim-autopairs.enable. The new +vim.autopairs.nvim-autopairs.enable supports setupOpts format by +default.

  • Refactor of nvim-cmp and completion related modules

  • Add C# support under vim.languages.csharp, with support for both +omnisharp-roslyn and csharp-language-server.

  • Add Julia support under vim.languages.julia. Note that the entirety of Julia +is bundled with nvf, if you enable the module, since there is no way to +provide only the LSP server.

  • Add run.nvim support for running code +using cached commands.

  • Make Neovim’s configuration file entirely Lua based. This comes with a few +breaking changes:

    • vim.configRC has been removed. You will need to migrate your entries to +Neovim-compliant Lua code, and add them to vim.luaConfigRC instead. +Existing vimscript configurations may be preserved in vim.cmd functions. +Please see Neovim documentation on vim.cmd

    • vim.luaScriptRC is now the top-level DAG, and the internal vim.pluginRC +has been introduced for setting up internal plugins. See the “DAG entries in +nvf” manual page for more information.

  • Rewrite vim.maps, see the breaking changes section above.

NotAShelf:

  • Add deno fmt as the default Markdown formatter. This will be enabled +automatically if you have autoformatting enabled, but can be disabled manually +if you choose to.

  • Add vim.extraLuaFiles for optionally sourcing additional lua files in your +configuration.

  • Refactor programs.languages.elixir to use lspconfig and none-ls for LSP and +formatter setups respectively. Diagnostics support is considered, and may be +added once the credo linter has been added to nixpkgs. A pull request is +currently open.

  • Remove vim-tidal and friends.

  • Clean up Lualine module to reduce theme dependency on Catppuccin, and fixed +blending issues in component separators.

  • Add [ts-ereror-translator.nvim] extension of the TS language module, under +vim.languages.ts.extensions.ts-error-translator to aid with Typescript +development.

  • Add neo-tree.nvim as an alternative file-tree plugin. It will be available +under vim.filetree.neo-tree, similar to nvimtree.

  • Add nvf-print-config & nvf-print-config-path helper scripts to Neovim +closure. Both of those scripts have been automatically added to your PATH upon +using neovimConfig or programs.nvf.enable.

    • nvf-print-config will display your init.lua, in full.

    • nvf-print-config-path will display the path to a clone of your +init.lua. This is not the path used by the Neovim wrapper, but an +identical clone.

  • Add vim.ui.breadcrumbs.lualine to allow fine-tuning breadcrumbs behaviour on +Lualine. Only vim.ui.breadcrumbs.lualine.winbar is supported for the time +being.

  • Add basedpyright as a Python LSP +server and make it default.

  • Add python-lsp-server as an +additional Python LSP server.

  • Add vim.options to set vim.o values in in your nvf configuration +without using additional Lua. See option documentation for more details.

  • Add vim.dashboard.dashboard-nvim.setupOpts to allow user +configuration for dashboard.nvim

  • Update lualine.nvim input and add missing themes:

    • Adds ayu, gruvbox_dark, iceberg, moonfly, onedark, +powerline_dark and solarized_light themes.

  • Add vim.spellcheck.extraSpellWords to allow adding arbitrary +spellfiles to Neovim’s runtime with ease.

  • Add combined nvf configuration (config.vim) into the final package’s +passthru as passthru.neovimConfiguration for easier debugging.

  • Add support for tiny-devicons-auto-colors under +vim.visuals.tiny-devicons-auto-colors

  • Move options that used to set vim.o values (e.g. vim.wordWrap) into +vim.options as default values. Some are left as they don’t have a direct +equivalent, but expect a switch eventually.

ppenguin:

  • Telescope:

    • Fixed project-nvim command and keybinding

    • Added default ikeybind/command for Telescope resume (<leader>fr)

  • Add hcl lsp/formatter (not the same as terraform, which is not useful for +e.g. nomad config files).

Soliprem:

  • Add LSP and Treesitter support for R under vim.languages.R.

    • Add formatter support for R, with styler and formatR as options

  • Add Otter support under vim.lsp.otter and an assert to prevent conflict with +ccc

  • Fixed typo in Otter’s setupOpts

  • Add Neorg support under vim.notes.neorg

  • Add LSP, diagnostics, formatter and Treesitter support for Kotlin under +vim.languages.kotlin

  • changed default keybinds for leap.nvim to avoid altering expected behavior

  • Add LSP, formatter and Treesitter support for Vala under vim.languages.vala

  • Add [Tinymist](https://github.com/Myriad-Dreamin/tinymist] as a formatter for +the Typst language module.

  • Add LSP and Treesitter support for Assembly under vim.languages.assembly

  • Move which-key to the new spec

  • Add LSP and Treesitter support for Nushell under vim.languages.nu

  • Add LSP and Treesitter support for Gleam under vim.languages.gleam

Bloxx12

  • Add support for base16 theming under +vim.theme

  • Fix internal breakage in elixir-tools setup.

ksonj:

nezia1:

Nowaaru:

  • Add precognition-nvim.

DamitusThyYeeticus123:

  • Add support for Astro language server.

+
+ +
+
+ + \ No newline at end of file diff --git a/docs-preview-494/script/anchor-min.js b/docs-preview-494/script/anchor-min.js new file mode 100644 index 00000000..70565172 --- /dev/null +++ b/docs-preview-494/script/anchor-min.js @@ -0,0 +1,10 @@ +// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat +// +// AnchorJS - v5.0.0 - 2023-01-18 +// https://www.bryanbraun.com/anchorjs/ +// Copyright (c) 2023 Bryan Braun; Licensed MIT +// +// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat +!function(A,e){"use strict";"function"==typeof define&&define.amd?define([],e):"object"==typeof module&&module.exports?module.exports=e():(A.AnchorJS=e(),A.anchors=new A.AnchorJS)}(globalThis,function(){"use strict";return function(A){function u(A){A.icon=Object.prototype.hasOwnProperty.call(A,"icon")?A.icon:"",A.visible=Object.prototype.hasOwnProperty.call(A,"visible")?A.visible:"hover",A.placement=Object.prototype.hasOwnProperty.call(A,"placement")?A.placement:"right",A.ariaLabel=Object.prototype.hasOwnProperty.call(A,"ariaLabel")?A.ariaLabel:"Anchor",A.class=Object.prototype.hasOwnProperty.call(A,"class")?A.class:"",A.base=Object.prototype.hasOwnProperty.call(A,"base")?A.base:"",A.truncate=Object.prototype.hasOwnProperty.call(A,"truncate")?Math.floor(A.truncate):64,A.titleText=Object.prototype.hasOwnProperty.call(A,"titleText")?A.titleText:""}function d(A){var e;if("string"==typeof A||A instanceof String)e=[].slice.call(document.querySelectorAll(A));else{if(!(Array.isArray(A)||A instanceof NodeList))throw new TypeError("The selector provided to AnchorJS was invalid.");e=[].slice.call(A)}return e}this.options=A||{},this.elements=[],u(this.options),this.add=function(A){var e,t,o,i,n,s,a,r,l,c,h,p=[];if(u(this.options),0!==(e=d(A=A||"h2, h3, h4, h5, h6")).length){for(null===document.head.querySelector("style.anchorjs")&&((A=document.createElement("style")).className="anchorjs",A.appendChild(document.createTextNode("")),void 0===(h=document.head.querySelector('[rel="stylesheet"],style'))?document.head.appendChild(A):document.head.insertBefore(A,h),A.sheet.insertRule(".anchorjs-link{opacity:0;text-decoration:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}",A.sheet.cssRules.length),A.sheet.insertRule(":hover>.anchorjs-link,.anchorjs-link:focus{opacity:1}",A.sheet.cssRules.length),A.sheet.insertRule("[data-anchorjs-icon]::after{content:attr(data-anchorjs-icon)}",A.sheet.cssRules.length),A.sheet.insertRule('@font-face{font-family:anchorjs-icons;src:url(data:n/a;base64,AAEAAAALAIAAAwAwT1MvMg8yG2cAAAE4AAAAYGNtYXDp3gC3AAABpAAAAExnYXNwAAAAEAAAA9wAAAAIZ2x5ZlQCcfwAAAH4AAABCGhlYWQHFvHyAAAAvAAAADZoaGVhBnACFwAAAPQAAAAkaG10eASAADEAAAGYAAAADGxvY2EACACEAAAB8AAAAAhtYXhwAAYAVwAAARgAAAAgbmFtZQGOH9cAAAMAAAAAunBvc3QAAwAAAAADvAAAACAAAQAAAAEAAHzE2p9fDzz1AAkEAAAAAADRecUWAAAAANQA6R8AAAAAAoACwAAAAAgAAgAAAAAAAAABAAADwP/AAAACgAAA/9MCrQABAAAAAAAAAAAAAAAAAAAAAwABAAAAAwBVAAIAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAMCQAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAg//0DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAAIAAAACgAAxAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADAAAAAIAAgAAgAAACDpy//9//8AAAAg6cv//f///+EWNwADAAEAAAAAAAAAAAAAAAAACACEAAEAAAAAAAAAAAAAAAAxAAACAAQARAKAAsAAKwBUAAABIiYnJjQ3NzY2MzIWFxYUBwcGIicmNDc3NjQnJiYjIgYHBwYUFxYUBwYGIwciJicmNDc3NjIXFhQHBwYUFxYWMzI2Nzc2NCcmNDc2MhcWFAcHBgYjARQGDAUtLXoWOR8fORYtLTgKGwoKCjgaGg0gEhIgDXoaGgkJBQwHdR85Fi0tOAobCgoKOBoaDSASEiANehoaCQkKGwotLXoWOR8BMwUFLYEuehYXFxYugC44CQkKGwo4GkoaDQ0NDXoaShoKGwoFBe8XFi6ALjgJCQobCjgaShoNDQ0NehpKGgobCgoKLYEuehYXAAAADACWAAEAAAAAAAEACAAAAAEAAAAAAAIAAwAIAAEAAAAAAAMACAAAAAEAAAAAAAQACAAAAAEAAAAAAAUAAQALAAEAAAAAAAYACAAAAAMAAQQJAAEAEAAMAAMAAQQJAAIABgAcAAMAAQQJAAMAEAAMAAMAAQQJAAQAEAAMAAMAAQQJAAUAAgAiAAMAAQQJAAYAEAAMYW5jaG9yanM0MDBAAGEAbgBjAGgAbwByAGoAcwA0ADAAMABAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAH//wAP) format("truetype")}',A.sheet.cssRules.length)),h=document.querySelectorAll("[id]"),t=[].map.call(h,function(A){return A.id}),i=0;i\]./()*\\\n\t\b\v\u00A0]/g,"-").replace(/-{2,}/g,"-").substring(0,this.options.truncate).replace(/^-+|-+$/gm,"").toLowerCase()},this.hasAnchorJSLink=function(A){var e=A.firstChild&&-1<(" "+A.firstChild.className+" ").indexOf(" anchorjs-link "),A=A.lastChild&&-1<(" "+A.lastChild.className+" ").indexOf(" anchorjs-link ");return e||A||!1}}}); +// @license-end + diff --git a/docs-preview-494/script/anchor-use.js b/docs-preview-494/script/anchor-use.js new file mode 100644 index 00000000..d2f2fe6c --- /dev/null +++ b/docs-preview-494/script/anchor-use.js @@ -0,0 +1,4 @@ +document.addEventListener('DOMContentLoaded', function(event) { + anchors.add('h1[id]:not(div.note h1, div.warning h1, div.tip h1, div.caution h1, div.important h1), h2[id]:not(div.note h2, div.warning h2, div.tip h2, div.caution h2, div.important h2), h3[id]:not(div.note h3, div.warning h3, div.tip h3, div.caution h3, div.important h3), h4[id]:not(div.note h4, div.warning h4, div.tip h4, div.caution h4, div.important h4), h5[id]:not(div.note h5, div.warning h5, div.tip h5, div.caution h5, div.important h5), h6[id]:not(div.note h6, div.warning h6, div.tip h6, div.caution h6, div.important h6)'); +}); + diff --git a/docs-preview-494/script/search.js b/docs-preview-494/script/search.js new file mode 100644 index 00000000..e20c2314 --- /dev/null +++ b/docs-preview-494/script/search.js @@ -0,0 +1,58 @@ +document.addEventListener("DOMContentLoaded", () => { + if (!window.location.pathname.endsWith("options.html")) return; + + const searchDiv = document.createElement("div"); + searchDiv.id = "search-bar"; + searchDiv.innerHTML = ` + +
+ `; + document.body.prepend(searchDiv); + + const dtElements = Array.from(document.querySelectorAll("dt")); + const ddElements = Array.from(document.querySelectorAll("dd")); + const dtOptionIds = dtElements.map( + (dt) => dt.querySelector("a")?.id.toLowerCase() || "", + ); + + if (dtElements.length === 0 || ddElements.length === 0) { + console.warn("Something went wrong, page may be loaded incorrectly."); + return; + } + + const dtElementsData = dtElements.map((dt, index) => ({ + element: dt, + id: dtOptionIds[index], + ddElement: ddElements[index], + })); + + const hiddenClass = "hidden"; + const hiddenStyle = document.createElement("style"); + hiddenStyle.innerHTML = `.${hiddenClass} { display: none; }`; + document.head.appendChild(hiddenStyle); + + let debounceTimeout; + document.getElementById("search-input").addEventListener("input", (event) => { + clearTimeout(debounceTimeout); + debounceTimeout = setTimeout(() => { + const query = event.target.value.toLowerCase(); + + const matches = []; + const nonMatches = []; + + dtElementsData.forEach(({ element, id, ddElement }) => { + const isMatch = id.includes(query); + if (isMatch) { + matches.push(element, ddElement); + } else { + nonMatches.push(element, ddElement); + } + }); + + requestAnimationFrame(() => { + matches.forEach((el) => el?.classList.remove(hiddenClass)); + nonMatches.forEach((el) => el?.classList.add(hiddenClass)); + }); + }, 200); + }); +}); diff --git a/docs-preview-494/style.css b/docs-preview-494/style.css new file mode 100644 index 00000000..2ec4c76b --- /dev/null +++ b/docs-preview-494/style.css @@ -0,0 +1,622 @@ +@import "tomorrow.min.css"; +html { + -webkit-text-size-adjust: 100%; +} + +html:focus-within { + scroll-behavior: smooth; +} + +body { + -webkit-text-size-adjust: 100%; + -moz-text-size-adjust: 100%; + text-size-adjust: 100%; + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + min-height: 100vh; + position: relative; + text-rendering: optimizeSpeed; + width: 100%; +} + +*, :after, :before { + box-sizing: border-box; +} + +a:not([class]) { + -webkit-text-decoration-skip: ink; + text-decoration-skip-ink: auto; +} + +a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video { + border: 0; + font-size: 100%; + font: inherit; + margin: 0; + padding: 0; + vertical-align: baseline; +} + +:focus { + outline: 0; +} + +article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section { + display: block; +} + +ol, ul { + list-style: none; +} + +blockquote, q { + quotes: none; +} + +blockquote:after, blockquote:before, q:after, q:before { + content: ""; + content: none; +} + +input, input:required { + box-shadow: none; +} + +input:-webkit-autofill, input:-webkit-autofill:active, input:-webkit-autofill:focus, input:-webkit-autofill:hover { + -webkit-box-shadow: inset 0 0 0 30px #fff; +} + +input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration, input[type=search]::-webkit-search-results-button, input[type=search]::-webkit-search-results-decoration { + -webkit-appearance: none; + -moz-appearance: none; +} + +input[type=search] { + -webkit-appearance: none; + -moz-appearance: none; +} + +input:focus { + outline: 0; +} + +audio, canvas, video { + display: inline-block; + max-width: 100%; +} + +audio:not([controls]) { + display: none; + height: 0; +} + +[hidden] { + display: none; +} + +a:active, a:hover { + outline: 0; +} + +img { + height: auto; + max-width: 100%; + vertical-align: middle; +} + +img, picture { + display: inline-block; +} + +button, input { + line-height: normal; +} + +button, html input[type=button], input[type=reset], input[type=submit] { + -webkit-appearance: button; + background: 0 0; + border: 0; + cursor: pointer; +} + +button[disabled], html input[disabled] { + cursor: default; +} + +[disabled] { + pointer-events: none; +} + +input[type=checkbox], input[type=radio] { + padding: 0; +} + +input[type=search] { + -webkit-appearance: textfield; + box-sizing: content-box; +} + +input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration { + -webkit-appearance: none; +} + +button::-moz-focus-inner, input::-moz-focus-inner { + border: 0; + padding: 0; +} + +button { + background: 0 0; + border: 0; +} + +textarea { + overflow: auto; + resize: vertical; + vertical-align: top; +} + +table { + border-collapse: collapse; + border-spacing: 0; + text-indent: 0; +} + +hr { + background: #000; + border: 0; + box-sizing: content-box; + height: 1px; + line-height: 0; + margin: 0; + overflow: visible; + padding: 0; + page-break-after: always; + width: 100%; +} + +pre { + font-family: monospace, monospace; + font-size: 100%; +} + +a { + background-color: transparent; +} + +abbr[title] { + border-bottom: none; + text-decoration: none; +} + +code, kbd, pre, samp { + font-family: monospace, monospace; +} + +small, sub, sup { + font-size: 75%; +} + +sub, sup { + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sub { + bottom: -5px; +} + +sup { + top: -5px; +} + +button, input, optgroup, select, textarea { + font-family: inherit; + font-size: 100%; + line-height: 1; + margin: 0; + padding: 0; +} + +button, input { + overflow: visible; +} + +button, select { + text-transform: none; +} + +[type=button], [type=reset], [type=submit], button { + -webkit-appearance: button; +} + +[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner { + border-style: none; + outline: 0; + padding: 0; +} + +legend { + border: 0; + color: inherit; + display: block; + max-width: 100%; + white-space: normal; + width: 100%; +} + +fieldset { + min-width: 0; +} + +body:not(:-moz-handler-blocked) fieldset { + display: block; +} + +progress { + vertical-align: baseline; +} + +[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button { + height: auto; +} + +[type=search] { + -webkit-appearance: textfield; + outline-offset: -2px; +} + +[type=search]::-webkit-search-decoration { + -webkit-appearance: none; +} + +::-webkit-file-upload-button { + -webkit-appearance: button; + font: inherit; +} + +summary { + display: list-item; +} + +template { + display: none; +} + +:root { + --nmd-color0: #0a3e68; + --nmd-color1: #268598; + --nmd-color2: #b8d09e; + --nmd-color3: #f6cf5e; + --nmd-color4: #ec733b; + --nmd-color-info: #167cb9; + --nmd-color-warn: #ff6700; +} + +body { + background: white; + color: #111827; + max-width: min(100ch, 1024px); + margin: 0 auto; + padding: 10px; + font-family: "Lucida Sans", Arial, sans-serif; + font-size: 16px; + line-height: 1.4em; +} +@media (prefers-color-scheme: dark) { + body { + background: #111827; + color: #f9fafb; + } +} + +h1, +h2, +h3 { + color: var(--nmd-color0); + font-family: "Lato", sans-serif; + font-weight: 300; + line-height: 1.125; +} +@media (prefers-color-scheme: dark) { + h1, + h2, + h3 { + color: var(--nmd-color4); + } +} + +h1 { + font-size: 48px; + font-weight: 300; + margin: 4rem 0 1.5rem; +} + +h2 { + font-size: 32px; + font-weight: 300; + margin: 2rem 0 1rem; +} + +h3 { + font-size: 20px; + font-weight: 400; + margin: 0.5rem 0.25rem; +} + +p { + margin: 0.9rem 0; +} +p:first-child { + margin-top: 0; +} +p:last-child { + margin-bottom: 0; +} + +a { + color: var(--nmd-color0); + text-decoration: underline; + text-underline-offset: 3px; +} +a:visited { + color: var(--nmd-color1); +} +a:hover { + color: var(--nmd-color1); +} +@media (prefers-color-scheme: dark) { + a { + color: var(--nmd-color3); + } + a:visited { + color: var(--nmd-color2); + } + a:hover { + color: var(--nmd-color4); + } +} + +code { + font-size: 90%; +} + +span.command { + font-size: 90%; + font-family: monospace; +} + +em { + font-style: italic; +} + +strong { + font-weight: bold; +} + +pre { + background: #f9fafb; + margin: 2rem 16px; + padding: 10px; + border: 1px solid #e5e7eb; + border-radius: 4px; + box-shadow: 4px 4px 8px #e5e7eb; + font-size: 90%; + margin-bottom: 1.5rem; + padding: 6px; + overflow: auto; +} +@media (prefers-color-scheme: dark) { + pre { + background: #1f2937; + border-color: black; + box-shadow: 4px 4px 8px black; + } +} +pre span img { + user-select: none; +} + +pre:has(code) { + padding: 0; +} + +td, +th { + padding: 2px 5px; +} +td:first-child, +th:first-child { + padding-left: 0; +} +td:last-child, +th:last-child { + padding-right: 0; +} + +dt { + margin: 1.2rem 0 0.8rem; + content-visibility: auto; + contain-intrinsic-size: auto 42px; +} + +dd { + margin-left: 2rem; + content-visibility: auto; + contain-intrinsic-size: auto 500px; +} + +ul { + margin: 0.9rem 0; + padding-left: 30px; + list-style: disc; +} +ul:first-child { + margin-top: 0; +} +ul:last-child { + margin-bottom: 0; +} + +ol { + margin: 0.9rem 0; + padding-left: 30px; + list-style: decimal; +} +ol:first-child { + margin-top: 0; +} +ol:last-child { + margin-bottom: 0; +} + +li { + margin: 0.9rem 0; + padding-left: 5px; +} +li:first-child { + margin-top: 0; +} +li:last-child { + margin-bottom: 0; +} + +.navheader hr, +.navfooter hr { + margin: 1rem 0; + background: #e5e7eb; +} +@media (prefers-color-scheme: dark) { + .navheader hr, + .navfooter hr { + background: #4b5563; + } +} +.navheader a, +.navfooter a { + text-decoration: none; +} + +#search-bar { + position: sticky; + top: 0; + background: white; + padding: 10px; + border-bottom: 1px solid #e5e7eb; + z-index: 1000; +} +@media (prefers-color-scheme: dark) { + #search-bar { + background: #111827; + color: #f9fafb; + border-bottom: 1px solid black; + } +} + +#search-input { + width: 100%; + padding: 8px; + border: 1px solid #ccc; + border-radius: 4px; + background: inherit; + color: inherit; +} + +.hidden { + display: none; +} + +div.titlepage { + margin: 40px 0; +} +div.titlepage hr { + display: none; +} + +div.toc { + background: #f9fafb; + margin: 2rem 16px; + padding: 10px; + border: 1px solid #e5e7eb; + border-radius: 4px; + box-shadow: 4px 4px 8px #e5e7eb; +} +@media (prefers-color-scheme: dark) { + div.toc { + background: #1f2937; + border-color: black; + box-shadow: 4px 4px 8px black; + } +} +div.toc a { + text-decoration: none; +} + +div.note, +div.warning { + background: #f9fafb; + margin: 2rem 16px; + padding: 10px; + border: 1px solid #e5e7eb; + border-radius: 4px; + box-shadow: 4px 4px 8px #e5e7eb; + font-style: italic; +} +@media (prefers-color-scheme: dark) { + div.note, + div.warning { + background: #1f2937; + border-color: black; + box-shadow: 4px 4px 8px black; + } +} +div.note h3, +div.warning h3 { + float: right; + margin: 0 0 1rem 1rem; + width: 42px; + height: 42px; + content: url(); +} +div.note h3 + p, +div.warning h3 + p { + margin-top: 0; +} + +div.note h3 { + background-color: var(--nmd-color-info); + mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='42' height='42' viewBox='0 0 24 24' stroke-width='2' stroke='black' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M12 8h.01'%3E%3C/path%3E%3Cpath d='M11 12h1v4h1'%3E%3C/path%3E%3Cpath d='M12 3c7.2 0 9 1.8 9 9s-1.8 9 -9 9s-9 -1.8 -9 -9s1.8 -9 9 -9z'%3E%3C/path%3E%3C/svg%3E"); + -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='42' height='42' viewBox='0 0 24 24' stroke-width='2' stroke='black' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M12 8h.01'%3E%3C/path%3E%3Cpath d='M11 12h1v4h1'%3E%3C/path%3E%3Cpath d='M12 3c7.2 0 9 1.8 9 9s-1.8 9 -9 9s-9 -1.8 -9 -9s1.8 -9 9 -9z'%3E%3C/path%3E%3C/svg%3E"); +} + +div.warning h3 { + background-color: var(--nmd-color-warn); + mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='42' height='42' viewBox='0 0 24 24' stroke-width='2' stroke='black' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M12 9v2m0 4v.01'%3E%3C/path%3E%3Cpath d='M5 19h14a2 2 0 0 0 1.84 -2.75l-7.1 -12.25a2 2 0 0 0 -3.5 0l-7.1 12.25a2 2 0 0 0 1.75 2.75'%3E%3C/path%3E%3C/svg%3E"); + -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='42' height='42' viewBox='0 0 24 24' stroke-width='2' stroke='black' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M12 9v2m0 4v.01'%3E%3C/path%3E%3Cpath d='M5 19h14a2 2 0 0 0 1.84 -2.75l-7.1 -12.25a2 2 0 0 0 -3.5 0l-7.1 12.25a2 2 0 0 0 1.75 2.75'%3E%3C/path%3E%3C/svg%3E"); +} + +.term { + font-weight: 300; +} + +.docbook .xref img[src^="images/callouts/"], +.screen img, +.programlisting img { + width: 1em; +} + +.calloutlist img { + width: 1.3em; +} + +/** The console prompt, e.g., `$` and `#` should not be selectable. */ +.programlisting.language-shell .hljs-meta.prompt_ { + user-select: none; +} + +@media (prefers-color-scheme: dark) { + @import "tomorrow-night.min.css"; +} + +/*# sourceMappingURL=style.css.map */