【发布时间】:2009-10-28 22:08:33
【问题描述】:
编辑:阅读回复后,我认为答案是“不要这样做”,因此我将适当的回复标记为官方答案。
有没有一种简单的方法可以让 emacs 显示 perl 切换语句,例如 perldoc.perl.org 的 switch page?
这是 perldoc.perl.org 上的格式:
use Switch;
switch ($val) {
case 1 { print "number 1" }
case "a" { print "string a" }
case [1..10,42] { print "number in list" }
case (\@array) { print "number in list" }
case /\w+/ { print "pattern" }
case qr/\w+/ { print "pattern" }
case (\%hash) { print "entry in hash" }
case (\&sub) { print "arg to subroutine" }
else { print "previous case not true" }
}
这是在 sn-p 上运行M-x indent-region 后cperl-mode 中的格式:
use Switch;
switch ($val) {
case 1 { print "number 1" }
case "a" { print "string a" }
case [1..10,42] { print "number in list" }
case (\@array) { print "number in list" }
case /\w+/ { print "pattern" }
case qr/\w+/ { print "pattern" }
case (\%hash) { print "entry in hash" }
case (\&sub) { print "arg to subroutine" }
else { print "previous case not true" }
}
我莫名其妙地想坚持使用 if-elsif 结构......
ps。我认为this 描述了所需的过程,但看起来需要一段时间才能解析。
【问题讨论】:
标签: perl emacs indentation switch-statement