skywind3000 / z.lua

:zap: A new cd command that helps you navigate faster by learning your habits.
MIT License
2.94k stars 137 forks source link

Powershell下没有正确加载的问题 #177

Closed Kosette closed 1 year ago

Kosette commented 1 year ago

OS:Win11 Powershell:7.3.4

因为z.ps一直不好使,所以打算换成z.lua,但是折腾了半天(字面意思),就是没有加载,想破了头,检查和其他模块的冲突,一遍遍调试,没有任何用处。But!当我对着z.lua文件发呆的时候,看到vim提示mixed indenting觉得强迫症犯了,就把所有tab缩进改成了空格缩进,结果脚本就正常加载了,使用了一下各个功能都正常工作。

被玄学恶心吐了,也不知道究竟是那里的问题,lua?powershell?亦或者是其他。总之结果还算皆大欢喜。

skywind3000 commented 1 year ago

不可能吧,lua 又不是 python

你要检查下,powershell 里 $function:prompt 初始化上了没有?见: https://github.com/skywind3000/z.lua/blob/0992ebf9f1f6cdaa114e65d3aa76bfb1bd9a6fd4/z.lua#L2662-L2672

会不会被其他不讲武德的插件给覆盖了?

特别是初始化顺序,z.lua 是不是最后一个初始化的插件?

瞧瞧这个输出是啥:

(get-command prompt).definition
Kosette commented 1 year ago

瞧瞧这个输出是啥:

(get-command prompt).definition

现在的输出结果都是正常的。

奇怪的地方就在这里,当时检查的结果就是没有正常的初始化,我甚至把其他的插件都删除了,反复重试没有效果(因为本来也没有复杂的依赖关系,所以想不出哪里问题)。现在正常加载之后,问题反而无法复现了,我感觉不是一个明显的bug,不清楚当时到底是什么原因导致初始化失败,也不知道有没有其他人遇到类似问题。🤔

skywind3000 commented 1 year ago

把 indent 还回去也没法重现错误了?那说明不是 indent 的问题啊,可能还有其他操作产生了变化。