我正在努力处理旧的“格式化”代码,其中添加了大量空格来排列 = 等:
if (!This.RevData.Last().Size() eq 0) then
!DocRev = '?'
!Status = '?'
!RevCode = '?'
else
!Pad = !This.RevData.Last()[1]
!DocRev = !Pad[2]
!Status = !This.GenUtil.If((!Pad[3] eq 'UA'), '' , !Pad[3])
!RevCode = !This.GenUtil.If((!Pad[6] eq '' ), '?', !Pad[6])
endif
Run Code Online (Sandbox Code Playgroud)
在这个例子中,它实际上是有一定意义的,但大多数情况下,代码已被修改为一种状态,使空白更加混乱而不是有用。
我想做的是将所有双(或更多)空格替换为单个空格,但我当然希望保留缩进。因此,我正在寻找一个正则表达式来识别不在行开头的双(或更多)空格。我尝试过否定lookbehind,但似乎无法使其工作:
(?<![\n])[\s]{2,}
Run Code Online (Sandbox Code Playgroud)
有什么提示吗?哦,我正在使用 Ultraedit(Perl 正则表达式引擎),因此正则表达式应该是“UE 兼容的”。
编辑:UE不会逐行评估正则表达式的行;换行符只是文档长字符串中的一个字符,这使问题变得有点复杂。
regex code-formatting negative-lookbehind removing-whitespace
我必须以另一种风格编写代码。我想知道如何为此目的配置 IntelliJ 吗?
这是在查看代码之前:
@Override
public void generateTestObjectsInDb(Object... objects) {
try {
for (Object obj : objects) {
DataBaseObjectService.createObjectInDB(obj);
}
} catch (Exception e) {
Logger.fatal("Error occured while generating data in product Database.", e);
}
}
Run Code Online (Sandbox Code Playgroud)
它应该是这样的:
@Override
public void generateTestObjectsInDb(Object... objects)
{
try
{
for (Object obj : objects)
{
DataBaseObjectService.createObjectInDB(obj);
}
}
catch (Exception e)
{
Logger.fatal("Error occured while generating data in product Database.", e);
}
}
Run Code Online (Sandbox Code Playgroud)
如何使用标准键绑定Ctrl + Alt + L来实现这个新代码?
我想在 Javascript 文件中使用制表符进行缩进。我像往常一样更改了配置,但预览似乎没有考虑我的修改。实际文件中都没有。
令人惊讶的是,“Spaces”子选项卡正在以正确的方式格式化代码,但它是唯一可以工作的地方。(见下面的截图)
有人有同样的问题吗?
我正在使用 IntelliJ Ultimate 2016.1
我使用Visual Studio 2015 的codealignment扩展来垂直对齐 C# 代码,因此格式化的代码如下所示:
PortfolioId = model.PortfolioId,
ItemId = model.ItemId,
Name = model.Name,
PurchaseDate = model.PurchaseDate,
PurchasePrice = model.PurchasePrice,
Run Code Online (Sandbox Code Playgroud)
另外,我喜欢使用 Ctrl+K+D 快捷键自动格式化整个文件中的代码,因此所有垂直对齐都会被破坏。
有没有办法配置自动格式以保持垂直对齐不变?
c# code-formatting vertical-alignment autoformatting visual-studio
我想自定义 Android studio 的单行注释格式,因为我一直希望我的代码看起来不错。
当我执行cmd + /时,它将代码注释为
override fun onCreate(savedInstanceState: Bundle?) {
// var a=10
}
Run Code Online (Sandbox Code Playgroud)
但我希望在代码开头添加注释,而不是上面的内容
override fun onCreate(savedInstanceState: Bundle?) {
//var a=10
}
Run Code Online (Sandbox Code Playgroud)
当代码进入 2-3 个嵌套 if 开头的注释时,看起来不太好,如下所示
if(true) {
if(true) {
if(true) {
if(true) {
if(true) {
// var a=10
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我希望它应该如下所示:
if(true) {
if(true) {
if(true) {
if(true) {
if(true) {
//var a=10
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我们应该怎么做?
我正在使用带有 C/C++ 扩展的 Visual Studio Code。命令 Ctrl+Shift+I 在新行上使用左大括号格式化代码,如下所示:
int f ()
{
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我想要的是这个:
int f() {
}
Run Code Online (Sandbox Code Playgroud)
是否有任何设置可以更改来执行此操作?如果没有,是否还有其他扩展可以按照我想要的方式格式化代码?
最近,右花括号开始在完全左侧对齐,而不是在左花括号下对齐,但仅当花括号为空时才对齐:
(我在 Visual Studio 2019 中,使用 C# 代码)步骤:
写这个:
namespace myNameSpace
{
class myClass
{ }
}
Run Code Online (Sandbox Code Playgroud)
然后在类大括号之间点击返回,它这样做了:
namespace myNameSpace
{
class myClass
{
}
}
Run Code Online (Sandbox Code Playgroud)
请注意类结束括号不在开头的下面。
我怎么能有这个呢,格式化选项在哪里?
namespace myNameSpace
{
class myClass
{
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢,
c# code-formatting curly-braces visual-studio visual-studio-2019
我的 javascript 代码的格式如下,但我对此不满意:
function(
req,
req.session,
amount,
offerCode,
userChoice,
referenceNo,
transactionId,
function (err, res) {
...
}
Run Code Online (Sandbox Code Playgroud)
我更喜欢这样改变它:
function( req, req.session, amount, offerCode, userChoice, eferenceNo, transactionId, function (err, res) {
...
}
Run Code Online (Sandbox Code Playgroud)
是否有任何代码格式化程序可以在大量代码上自动执行此操作。
我正在编写一些颤振代码。该代码将右大括号堆叠在同一行上。此外,当我在 VSCode 中运行“Format Document”时,它还会将大括号堆叠在一行上。
像这样(见最后一行)...
return Container(
width: 200,
child: CupertinoTextField(
maxLength: 10,
textCapitalization: TextCapitalization.characters,
focusNode: focusNode,
decoration: BoxDecoration(
border: Border.all(color: Colors.white.withOpacity(0))),
style: accentTextStyle,
placeholder: "NAME",
textAlign: TextAlign.center,
keyboardAppearance: Brightness.dark,
controller: _textController,
onChanged: (s) {
navigation.update();
if (s == '') {
program.name = 'UNNAMED${navigation.programsCounter}';
return;
}
program.name = s.toUpperCase();
}));
Run Code Online (Sandbox Code Playgroud)
但在 flutter 文档和示例代码中,所有示例都使用以下格式(其中大括号位于单独的行上)。
return Container(
width: 200,
child: CupertinoTextField(
maxLength: 10,
textCapitalization: TextCapitalization.characters,
focusNode: focusNode,
decoration: BoxDecoration(
border: Border.all(color: Colors.white.withOpacity(0))),
style: accentTextStyle,
placeholder: "NAME",
textAlign: TextAlign.center,
keyboardAppearance: Brightness.dark,
controller: _textController, …Run Code Online (Sandbox Code Playgroud) 我做了很多搜索来找到一种方法来创建或覆盖 vscode 的现有扩展来为 django-template 进行缩进,但什么也没有,创建也没有成功。最佳答案仍然使用此设置:
"files.associations": {
"**/*.html": "html",
"**/templates/**/*.html": "django-html",
}
"[django-html]": {
"editor.defaultFormatter": "HookyQR.beautify",
}
"beautify.language": {
"html": ["django-html"]
},
Run Code Online (Sandbox Code Playgroud)
和这个扩展:Dajngo (Baptiste Darthenay)& beautify。但 django-template 语言没有缩进,只有 HTML 标签会缩进。我尝试覆盖Djagno扩展以使其成为可能,是的,它会插入一些缩进,但保存代码后,Beautify会自动格式化代码并删除该缩进,所以结果总是像这样:
<ul class="navbar-nav nav-flex-icons {% if LANGUAGE_BIDI %} mr-auto {% endif %}">
{% get_available_languages as languages %}
{% for lang_code, lang_name in languages %}
{% if lang_code != LANGUAGE_CODE %}
{% language lang_code %}
<li class="nav-item">
<a class="nav-link lang-setter" data-lang-code="{{ lang_code }}">
{{ lang_code|language_name_local …Run Code Online (Sandbox Code Playgroud) code-formatting django-templates visual-studio-code vscode-extensions prettier
code-formatting ×10
c# ×2
javascript ×2
android ×1
curly-braces ×1
dart ×1
flutter ×1
indentation ×1
java ×1
prettier ×1
regex ×1