编辑临时vim(或其他控制台编辑器)缓冲区中的文件和字符串。

vimbuffer的Python项目详细描述


波姆缓冲器

在临时vim(或其他控制台编辑器)缓冲区中编辑文件和字符串。在

安装

要求:

  • Python3.6+
pip3 install vimbuffer

使用

只有一个函数,buffer

^{pr2}$

通过指定环境变量可以覆盖编辑器,请参阅下面的解析顺序。在

示例
import vimbuffer

# edit a string
prompt_string = "Edit this and put what you want here!"
edited_text = vimbuffer.buffer(string=prompt_string)  # opens vim

# edit a file
vimbuffer.buffer(file=os.path.expanduser("~/.bashrc"), name_prefix="bashrc-")

它使用^{}在系统上创建临时文件,并针对它们启动vim。如果环境变量$EDITOR被设置为图形文本编辑器,那么在用户有机会编辑它之前,该过程(在本例中只启动图形编辑器)将结束。我建议改用终端文本编辑器。在

您可以指定后备编辑器的列表;您希望使用该列表来代替$EDITOR

project_description="""
## <my-project>

By <your-name>
"""

edited_desc = vimbuffer.buffer(project_description, fallbacks=["nvim", "vim", "vi", "nano"])

或者,如果您想将$EDITOR保留为图形文本编辑器,您可以设置$VIMBUFFER_EDITOR环境变量,它胜过所有其他选项。具体而言,解决顺序为:

  • $VIMBUFFER_EDITOR
  • editor
  • fallbacks在python中作为关键字参数传递
  • $EDITOR
  • vim
  • vi

name_prefix以kwarg形式存在,因为临时文件的名称是随机生成的。通过传递一个前缀,名称将变成/tmp/bashrc-sd43Jds,因此它可能会提示您正在编辑的文件/内容

测试

pytest

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
“电话目录”数据结构的java实现   使用PC remote读取JSP页面上的文件时出现java错误   无法在不同目录中从Java执行Python脚本   java无法在windows 8.1上运行javafx应用程序   java航空公司系统如何防止两个用户同时预订同一个座位?   反射如何在java方法中获取每个参数的名称和值?   阅读中的字符串问题。txt文档并在Java中编辑   java JTextPane行包装问题   使用PowerMock Android Junit时出现java ClassNotFoundException   java输入和If语句   java如何在不使用剪贴板或操作CTRL+C、CTRL+V的情况下将字符串中的“\t”或“tab”发送到selenium中的文本框中   tomcat7将Java应用程序部署到Digitalocean中的Tomcat根目录   响应中嵌套映射的java问题(Jersey)