#line #status #setting #line-comment #plain #fashion #plain-text

app toggle-comment

一个实用程序,以do-what-i-mean的方式设置或切换纯文本文件中行的行注释状态

5个版本 (破坏性更新)

0.5.0 2020年9月28日
0.4.0 2020年9月21日
0.3.0 2020年9月15日
0.2.0 2020年9月1日
0.1.0 2020年8月31日

#fashion中排名5

每月下载量25

MIT许可证

30KB
637

toggle-comment

toggle-comment是一个实用程序,旨在通过do-what-I-mean的方式设置或切换纯文本文件中行的行注释状态。它旨在与GNU sed进行肌肉记忆兼容。

示例

$ cat > example.py <<'EOF'
def greet(name):
    # Give salutations
    return f'Hello, {name}!'

print(greet('world'))
EOF
$ toggle-comment '/def/,/return/' example.py
# def greet(name):
#     # Give salutations
#     return f'Hello, {name}!'

print(greet('world'))
$ toggle-comment '1,3' example.py | toggle-comment '4,5!'
def greet(name):
    # Give salutations
    return f'Hello, {name}!'

print(greet('world'))

注意事项

  • 正则表达式语法与Rust regex crate匹配。显著差异在于特殊字符的转义(缺乏),例如 /a|b//a\|b/
  • 当前不支持的功能包括
    • 文件就地编辑;
    • 多个文件参数;
    • POSIX sed M~N "逐步"模式,例如 1~3 匹配行 1,4,7...;
    • GNU sed addr,~N "up-to-multiple",例如 10,~7 匹配行 10-14;以及
    • 非斜杠正则表达式分隔符,例如 \|http://|(初始反斜杠后跟分隔符);

依赖关系

~2.8–4MB
~59K SLoC