我想在emacs中编辑boustrophedon中的文本。对于那些不知道boustrophedon文本方向的人来说,方向就像一头牛在田野里转弯一样,或者像打印机喷墨一样。出于同样的原因,这在农场或打印机中非常有效,一旦您习惯了它,阅读此文本就非常有效(这不会花费太长时间)。
更多关于boustrophedon排版/版面的信息:http://www.ntg.nl/pipermail/aleph/2004-March/000094.html
据我所知,没有这种排版风格的实现,我对如何实现它感到困惑。
你对如何做到这一点有什么想法吗?
谢谢,安德烈亚斯
发布于 2009-01-09 05:17:29
我假设建议使用self-insert-command、拦截事件并相应地修改缓冲区就是您想要做的事情。然后,您将需要重新绑定方向命令(forward-char和friends在相反的行上颠倒),依此类推。
有很多工作要做,但绝对是可能的。
在编写任何太复杂的代码之前,请访问emacs-devel。正如评论所暗示的那样,对这样的东西有通用的支持可能是有用的……尽管带有不同方向的任意文本片段不会像您的文本那样自动换行(插入时)。
编辑:显然,建议self-insert-command对此不太起作用,因此您需要设置一个键映射(并将?a绑定到(my-new-insert-command ?a),等等)。
发布于 2016-01-04 02:49:38
您可以用sed编写它,我从sed1liners文本中删除了rev脚本,跳过一行,然后每隔一行执行一次rev:
alias boustrophedon='sed -n "1{p;b a};{/\n/!G;s/\(.\)\(.*\n\)/&\2\1/;//D;s/.//;p};n;p;:a"'
$> echo -en "This\nis\nBoustrou...\ntext\non\ndisplay\nhere.\n" | boustrophedon
This
si
Boustrou...
txet
on
yalpsid
here.或者,如果您想要处理整个文件:
$> boustrophedon <filename>
发布于 2009-06-07 14:16:27
有一个linux软件可以“转动公牛”。查看http://traevoli.com/boust/ Enjoy!
https://stackoverflow.com/questions/418365
复制相似问题