我刚刚开始学习Forth编程语言。我在Ubuntu上用的是Gforth。在Gforth交互式控制台中,我想进行缩进,但它需要更改行。Enter键不起作用,它执行代码。作为比较,例如,当用户在web浏览器控制台中测试JavaScript代码时,shift+enter在不执行代码的情况下更改行。我想要这样的东西。我应该按什么键?除了使用像vim这样的文本编辑器之外,还有其他方法吗?最好的。
发布于 2021-08-11 09:34:15
Gforth不支持多行编辑(参见manual)。
一种解决方法是在另一个窗口中使用您喜欢的编辑器编辑文件,然后将此文件重新加载到Gforth控制台中,如下所示:
include /tmp/scratch.fs外部文件也可以通过以下命令在Gforth控制台中进行编辑:
"vim /tmp/scratch.fs" system因此,一句话就是:
"vim /tmp/scratch.fs" system "/tmp/scratch.fs" included可以封装到定义中,如下所示:
: scratch "vim /tmp/scratch.fs" system "/tmp/scratch.fs" included ;因此,word scratch将打开一个编辑器,然后加载编辑后的文件。
注意:如果你使用一个相当老的Gforth版本,你必须使用s" ccc"而不是"ccc"来表示字符串文字。
要有条件地包括/排除文件中的某些零件,可以使用单词[defined]和[if];要删除已加载定义的先前实例,可以使用单词marker:
[defined] _clear [if] _clear [then]
marker _clear
\ some definitions
\ ...考虑到通常控制流字只能在定义中使用。
https://stackoverflow.com/questions/68735472
复制相似问题