如何在摩纳哥编辑器中的代码区域添加填充?我浏览了编辑器构造选项,但找不到任何相关内容 .
我尝试调整行内容,边距,编辑器可滚动等css . 似乎不正确的方法,因为调整它们导致光标位置的疯狂行为 .
TL;DR :通过选项 lineNumbers:(ln)=>'<span style="padding-rigth:4px">'+ln+'</span>' 在行号中添加一些填充 .
lineNumbers:(ln)=>'<span style="padding-rigth:4px">'+ln+'</span>'
通过CSS你很接近,尝试在后台添加一个边距:
.monaco-editor .lines-content.monaco-editor-background { margin-left: 4px; }
这将为所有编辑做到这一点 . 如果您想要特定的实例,首先将extra className添加到此类编辑器并相应地编辑以前的样式 . 这不会影响光标,但它与内容小部件和其他功能有关 .
有两种方法可以将行号与文本分开:(1)启用代码折叠( folding:true ),这样可以在行号和行文本之间创建一个很好的分隔; (2)使用自定义lineNumbers渲染器:
folding:true
const options = { lineNumbers: function(lineNumber){ return `<span style="padding-right:4px">${lineNumber}</span>`; } // more options... } monaco.editor.create(anElement, options);
如果你真的想要填充,你需要增加 lineNumbersMinChars 的可用空间,因为行号溢出了行的文本 .
lineNumbersMinChars
1 回答
TL;DR :通过选项
lineNumbers:(ln)=>'<span style="padding-rigth:4px">'+ln+'</span>'
在行号中添加一些填充 .通过CSS你很接近,尝试在后台添加一个边距:
这将为所有编辑做到这一点 . 如果您想要特定的实例,首先将extra className添加到此类编辑器并相应地编辑以前的样式 . 这不会影响光标,但它与内容小部件和其他功能有关 .
有两种方法可以将行号与文本分开:(1)启用代码折叠(
folding:true
),这样可以在行号和行文本之间创建一个很好的分隔; (2)使用自定义lineNumbers渲染器:如果你真的想要填充,你需要增加
lineNumbersMinChars
的可用空间,因为行号溢出了行的文本 .