你是否可以在代码注释中划掉 不需要的 修改后的单词? 由于开发人员仍然在使用最初时代的纯文本编写代码,在没有隐藏标识符的情况下无法格式化文本,为了实现这一点,唯一的方法是使用Unicode字符。
由于某些Unicode字符可以扩展到它们指定的边界之外,因此我认为可能会找到一个创建删除线效果的Unicode字符。
不幸的是,破折号字符—占据了大量的水平空间。是否有其他字符可用于创建跨越文本的删除线效果?
你是否可以在代码注释中划掉 不需要的 修改后的单词? 由于开发人员仍然在使用最初时代的纯文本编写代码,在没有隐藏标识符的情况下无法格式化文本,为了实现这一点,唯一的方法是使用Unicode字符。
由于某些Unicode字符可以扩展到它们指定的边界之外,因此我认为可能会找到一个创建删除线效果的Unicode字符。
不幸的是,破折号字符—占据了大量的水平空间。是否有其他字符可用于创建跨越文本的删除线效果?
有一个叫做U+0336的字符,它是一种组合字符,可以用来给文本添加删除线效果。如果在谷歌中搜索“Unicode strikethough”,就会出现一些工具可以帮助你将其应用到文本中,比如这个。但是,效果是否好看取决于你的字体;在我的环境中,效果非常糟糕。
def striken(text):
return ''.join(t+chr(822) for t in text)
>>> def striken(text):
... return ''.join(t+chr(822) for t in text)
...
>>> striken("hello")
'h̶e̶l̶l̶o̶
>>> striken("hello darkness my old friend")
'h̶e̶l̶l̶o̶ ̶d̶a̶r̶k̶n̶e̶s̶s̶ ̶m̶y̶ ̶o̶l̶d̶ ̶f̶r̶i̶e̶n̶d̶'
此外,你也可以使用以下方法:
def striken(text):
return '\u0336'.join(text) + '\u0336'
如果你的文本真的很长,建议按照 @astroMonkey 的建议来提高速度。
'\u0336'.join(text) + '\u0336'
可以避免较慢的 Python for 循环。 - codeMonkey<^>!ü::Send {U+0336}
按下
AltGr+ü , y , AltGr+ü , e , AltGr+ü , s
(抱歉,我选择了德语umlaut作为快捷方式,您可能希望使用其他键)
ü
很有意义,就像“dürchgüstrüchün”一样 :-) - Marcus K.