如果我对原始文件做了几次修改,即
1 delete a line
2 insert some text
3 delete another line
4 delete the text added in step 2
5 insert some other text
6 ...
Run Code Online (Sandbox Code Playgroud)
现在我想恢复在步骤 2 中删除的文本,有没有办法显示修改并拾取一些东西?
一个真实的例子是:我有一个Python文件util.py
,我改变了函数名从一个foo
到bar
。可能还有其他文件foo
用作函数名,它们无关紧要。
我想从更新项目中的所有的Python文件foo
来bar
。所以我想对导入的文件进行搜索,例如:
import project.path.util
Run Code Online (Sandbox Code Playgroud)
或者
from project.path.util import foo
Run Code Online (Sandbox Code Playgroud)
以及对foo
诸如以下内容的任何调用:
foo(
Run Code Online (Sandbox Code Playgroud)
解决方案必须是空白容忍的。我可以使用它们中的每一个进行搜索,grep
但我不确定组合搜索。任何建议将不胜感激。
我有像
abcdefg
join!
abcdef
no join
abcdefg
join!
Run Code Online (Sandbox Code Playgroud)
如果一行与正则表达式匹配,^a.+g$
那么我希望它们被加入,所以它是:
abcdefgjoin!
abcdef
no join
abcdefgjoin!
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点VIM
?