如何查找 Swift REPL 的命令历史记录
How to find command history of Swift REPL
我一直在 Swift REPL(在 macOS 上)中输入命令,而不是回滚查看我的命令历史记录,我想知道是否有一个文件或数据库可以保存历史记录,例如在我可以查看的其他 REPL(例如 python)中。
这个有货吗?
Swift REPL(实际上以 REPL 模式启动 lldb 调试器)
使用 libedit 进行命令行编辑和历史记录。退出时,历史记录保存到文件 ~/.lldb/lldb-repl-history
(比较 SR-4338 Swift REPL crashes on launch if ~/.lldb/lldb-repl-history
contains emoji)。
了解这段历史应该不会太难
来自 libedit 源代码的文件格式。这是一个简单的例子。
REPL 会话后
$ swift
Welcome to Apple Swift version 3.1 (swiftlang-802.0.53 clang-802.0.42). Type :help for assistance.
1> let a = 1
a: Int = 1
2> let b = 2
b: Int = 2
3> print(a + b)
3
4> ^D
历史文件包含
_HiStOrY_V2_
let0a0=012
let0b0=022
print(a0+0b)2
我一直在 Swift REPL(在 macOS 上)中输入命令,而不是回滚查看我的命令历史记录,我想知道是否有一个文件或数据库可以保存历史记录,例如在我可以查看的其他 REPL(例如 python)中。
这个有货吗?
Swift REPL(实际上以 REPL 模式启动 lldb 调试器)
使用 libedit 进行命令行编辑和历史记录。退出时,历史记录保存到文件 ~/.lldb/lldb-repl-history
(比较 SR-4338 Swift REPL crashes on launch if ~/.lldb/lldb-repl-history
contains emoji)。
了解这段历史应该不会太难 来自 libedit 源代码的文件格式。这是一个简单的例子。 REPL 会话后
$ swift Welcome to Apple Swift version 3.1 (swiftlang-802.0.53 clang-802.0.42). Type :help for assistance. 1> let a = 1 a: Int = 1 2> let b = 2 b: Int = 2 3> print(a + b) 3 4> ^D
历史文件包含
_HiStOrY_V2_ let0a0=012 let0b0=022 print(a0+0b)2