Windows git bash输入vim报错,不能使用vim-plug插件管理器

这篇具有很好参考价值的文章主要介绍了Windows git bash输入vim报错,不能使用vim-plug插件管理器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Windows系统下的git bash在安装时自带了默认的vim,我自己也下了个gvim,并且配置了.vimrc,其中使用了vim-plug管理nerdtree这些插件。但是在bash中vim <file>时,就会蹦出来几行报错:

处理 /c/Users/<username>/.vimrc 时发生错误:
第  152 行:
E117: 未知的函数: plug#begin
第  155 行:
E492: 不是编辑器的命令: Plug 'scrooloose/nerdtree'
第  161 行:
E117: 未知的函数: plug#end
请按 ENTER 或其它命令继续

bash和Windows的vim

我们在bash中输入which vim,显示结果是/usr/bin/vim代表bash用的是自带的vim,而不是我们的gvim,同时gvim也带了个vim.exe,这里我们可以比较下三者的不同。

显示

  • bash自带的vim(“C:\Program Files\Git\usr\bin\vim.exe”)
    Windows git bash输入vim报错,不能使用vim-plug插件管理器,踩坑求生手册,windows,git,bashWindows git bash输入vim报错,不能使用vim-plug插件管理器,踩坑求生手册,windows,git,bash
  • gvim (“C:\Program Files (x86)\Vim\vim82\gvim.exe”)
    Windows git bash输入vim报错,不能使用vim-plug插件管理器,踩坑求生手册,windows,git,bash
  • gvim下的vim.exe (“C:\Program Files (x86)\Vim\vim82\vim.exe”)
    Windows git bash输入vim报错,不能使用vim-plug插件管理器,踩坑求生手册,windows,git,bash

可以看到他们的界面是有些差异的:bash的vim和gvim长得很像,但是不能读plug且窗口界面小了很多。而vim.exe界面渲染不同,颜色炫酷了些,且窗口大小和bash的vim一样。

.vimrc配置

我在.vimrc中设置了winpos 380 210,指定了窗口的位置,所以他们左上角的位置是相同的。

使用vim.exe作为bash的vim

因为bash自带的vim不能正常工作,我们决定修改vim的别名

# 方案一
$ alias vim="C:\Program Files (x86)\Vim\vim82\gvim.exe"
# vim <file>后跳出新的gvim窗口
# 方案二
$ alias vim="C:\Program Files (x86)\Vim\vim82\vim.exe"
# vim <file>后仍在当前bash窗口,但是窗口移动到了.vimrc中定义的380 210位置,大小也随之改变。
# :q!退出vim后窗口位置不变,大小恢复

方案一比较省事,跳出的vim界面也可以编辑,但是美中不足的是不在shell内
方案二仍是在shell窗口编辑,但是窗口的大小和位置都会改变。

之后就可以将alias vim="C:\Program Files (x86)\Vim\vim82\vim.exe"放在~/.bash_profile中了。至于为什么放在.bashrc中无效,放在最后讨论

这里我们进一步优化方案二

修改bash窗口的位置和大小

Windows git bash输入vim报错,不能使用vim-plug插件管理器,踩坑求生手册,windows,git,bash
其中调整窗口位置和.vimrc中一致即可。不过

.bashrc和.bash_profile

主目录下有.bash_profile.bashrc,每次打开新的git窗口时,就会加载.bash_profile而不是.bashrc。这里就涉及到了login shell和non-login shell,我们的git bash就属于前者。

Windows下的git bash是login shell Windows没有login shell的概念

简洁的方法就是在.bash_profile最后添加

# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
    . "$HOME/.bashrc"
fi

这样就可以执行.bashrc中的指令了

参考:

  • .bashrc not executed when opening new terminal(这是askubuntu、、Git for Windows不是GNU/Linux,用虚拟机或wsl吧)
  • Shell 启动类型探究 ── login && interactive(启动文件的顺序)
  • Git for Windows: .bashrc or equivalent configuration files for Git Bash shell(新版的git for Windows,启动时自带–login,所以不会直接读.bashrc,需要在.bash_profile加source .bashrc)

关于删除.bash_profile那些事

想尝试下删掉~/.bash_profile.bashrc会不会被自动执行,结果重新打开git就给出了warning:

WARNING: Found ~/.bashrc but no ~/.bash_profile, ~/.bash_login or ~/.profile.

This looks like an incorrect setup.
A ~/.bash_profile that loads ~/.bashrc will be created for you.

然后在主目录下发现了新的.bash_profile文章来源地址https://www.toymoban.com/news/detail-554257.html

# generated by Git for Windows
test -f ~/.profile && . ~/.profile
test -f ~/.bashrc && . ~/.bashrc

到了这里,关于Windows git bash输入vim报错,不能使用vim-plug插件管理器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Windows下Git Bash的基本使用

    初始化完成后,会在目录下创建一个.git的隐藏目录,用来存放项目信息。 、 在项目目录下新建文件readme.txt,内容为 然后,使用命令 将文件添加到仓库 然后,使用git commit将文件提交到仓库: git commit 的参数-m后面输入的是本次提交的备注说明 你也可以先往仓库中添加多个

    2024年02月09日
    浏览(35)
  • Windows系统中使用bat脚本启动git bash 并运行指定命令 - 懒人一键git更新

    双击\\\"autoGitPull.bat\\\",自动打开git bash,并cd到项目,逐个git pull,保留git bash窗口展示进度。 其中,start \\\"\\\" \\\"D:xx.exe\\\"的第一个\\\"\\\"是空运行,防止报错找不到命令-c 另外,屁股的\\\";bash\\\"是强制git bash别关窗口  

    2024年02月13日
    浏览(88)
  • windows下修改PyCharm默认terminal & 在Git Bash中使用conda

    PyCharm的terminal默认使用的是powershell,但是conda环境是通过cmd运行的,因此可以将PyCharm的默认terminal修改成cmd。 在设置页面中打开 Settings--Tools--Terminal ,将Shell path修改成cmd即可 git操作默认是在Git Bash中使用,因此想在Git Bash中同时使用conda,这样默认terminal改成Git Bash就能同时使

    2024年02月13日
    浏览(47)
  • 使用 VS2022 内置 Git 异常,报错“长度不能小于0” 解决办法

    关于使用 VS2022 内置 Git 异常,报错“长度不能小于0”的问题 需要在注册表(regedit)中增加项 路径 [计算机HKEY_LOCAL_MACHINESOFTWARETECOcular.3agentconfig] 下新增 [字符串值] hookapi_disins [数值数据] 1 可直接运行命令行添加注册表 路径 [计算机HKEY_LOCAL_MACHINESOFTWARETECOcular.3agent

    2024年02月11日
    浏览(44)
  • Windows下Git Bash调用rsync

    rsync 提供了补充只需要在git安装目录下放入对应的文件即可。 需要将这个三个文件放到git的bin目录下 如果是默认安装路径是如下: 然后大功告成。 补充工具

    2024年02月10日
    浏览(43)
  • windows 10 下微信突然不能输入中文:已禁用输入法,排查键盘问题无果……

    今天在使用电脑过程中,微信突然不能输入中文了,但是其它程序如QQ、Edge浏览器中可以正常输入中文。 切换到微信时,系统托盘区的输入法图标位置显示为一个带圆圈的X,鼠标停在X上会提示“已禁用输入法”:  鼠标右击X,弹出一个菜单项“排查键盘问题”:    点击它

    2024年02月11日
    浏览(45)
  • 在 Windows 右键菜单添加 Git Bash

    在日常开发过程中,我们经常需要使用 Git Bash 进行版本控制操作。然而,每次都需要打开 Git Bash,然后导航到我们的工作目录,这无疑增加了我们的工作负担。那么有没有一种方法可以让我们直接在目录中打开 Git Bash 呢?答案是肯定的。在本文中,我将向你展示如何将 Git

    2024年04月25日
    浏览(58)
  • windows下在cmd和git bash中执行bash download.sh失败

    cmd报错信息: 解决办法: win64-wget-1.21.4 安装软件wget,如下这是64位的包,解压后,下面有个wget.exe,拷贝到C:WindowsSystem32、 然后打开cmd,执行wget -V 如上,有版本信息就OK了。 再一次进入git bash中执行bash download.sh,下载成功:

    2024年02月02日
    浏览(36)
  • 右键git bash here打不开git窗口以及git clone报错

    问题 右键点击git bash here没有反应。 原因 本地的git.exe的地址可能进行了修改,发生了变化,但在注册表中相关配置没有及时得到更新。 解决方案 打开注册表,win+r输入regedit打开注册表: 以下路径中的文件有涉及到git地址的全部进行更新: 修改之后就能够成功打开git bash了

    2024年02月07日
    浏览(46)
  • Windows terminal 添加 git bash 解决git中文乱码显示问题

    说明: 点击箭头 选择设置 说明: 点击\\\"添加新配置文件\\\" 配置名称 命令行,可执行文件的具体语句 C:Program FilesGitbinbash.exe 启动目录,配置指定目录,默认打开是在 terminal 的安装目录 图标,用于在终端前显示 解决办法:在命令行中添加参数 --login -i ,完整的命令行内容

    2024年02月14日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包