为了写markdown文件,Windows下的noevim配置

news2024/10/5 23:26:19

vim安装插件

在网页上写CSDN文章有诸多不便,感觉vim很好用,可是vim中没有预览功能。按照网上找到的教程安装插件,将以下代码复制的到_vimrc文件中。

set rtp+=$VIM/vimfiles/bundle/Vundle.vim/
call vundle#begin('./vimfiles/bundle/')

" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'

"Plug 'iamcco/markdown-preview.vim'
"Plugin 'godlygeek/tabular'
"Plugin 'preservim/vim-markdown'
"Plugin 'iamcco/markdown-preview.nvim' 
"Plugin  'iamcco/mathjax-support-for-mkdp'
"Plugin 'iamcco/markdown-preview.vim:'
Plugin  'iamcco/mathjax-support-for-mkdp'
Plugin   'iamcco/markdown-preview.vim'

" All of your Plugins must be added before the following line
call vundle#end()            " required

打开vim,命令模式下运行:PluginInstall。插件安装成功了以为可以用,但输入:MarkownPreview却报错:
在这里插入图片描述

安装neovim

安装nvim,下载地址:http://neovim.io/。

搞到凌晨4点也没搞定。想着安装neovim把,下载下来后不管运行nvim.exe还是nvim-qt.exe都报 can’t open file F:\Program Files\Vim\syntax\syntax.vim。无语了我的neovim打开怎么跑到Vim的安装目录中去了。

网上搜了一下在init.vim添加:

"let $VIMRUNTIME="F:\\Program Files\\Vim\\linux_vim\\vim81"
let $VIMRUNTIME="F:\\Program Files\\Vim\\vim82"
set runtimepath="F:\\Program Files\\Vim\\vim82"

虽然能找到syntax.vim了,但又报:filetypedetect bufread。搞不定了。

继续搜索,发现有两个环境变量XDG_CONFIG_HOME、XDG_DATA_HOME可能需要配置,windows中neovim的配置文件默认放在目录~\AppData\Local\nvim\下。修改这两个环境变量可以改变配置文件init.vim的存放位置。打开nvim在普通模式中使用:echo stdpath('config')查看修改后的配置文件位置。
在这里插入图片描述
在修改的过程中发现还有一个环境变量VIM=F:\Program Files\Vim\是当初安装Vim时留下的,猜测可能是VIM引导neovim到Vim的安装目录下找syntax.vim文件了。果断删掉$VIM,果然重新运行nvim.exe一切正常。

自动生成init.vim文件

" 先启动 neovim
nvim
" 然后再 neovim 中输入如下两条命令
:call mkdir(stdpath('config'), 'p')
:exe 'edit '.stdpath('config').'/init.vim'

下载plug.vim

配置plug-vim,下载plug.vim放入neovim安装目录的config\nvim-data\site\autoload中

Administrator  Desktop  ♥ 17:20  iwr -useb https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim |`
>     ni "$(@($env:XDG_DATA_HOME, $env:LOCALAPPDATA)[$null -eq $env:XDG_DATA_HOME])/nvim-data/site/autoload/plug.vim" -Force

    Directory: F:\Programs\Neovim\config\nvim-data\site\autoload

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a---           2023/4/24    17:21          83127 plug.vim

安装neovim的插件

复制以下代码放入init.vim文件中

let $VIMRUNTIME='F:\Programs\Neovim\share\nvim\runtime\'
let &packpath = &runtimepath

set nocompatible

" 基础配置
syntax on

" 插件
call plug#begin('F:\Programs\Neovim\config\nvim-data\site\plugged')
" themes
Plug 'morhetz/gruvbox'

" Markdown
Plug 'iamcco/markdown-preview.nvim', { 'do': { -> mkdp#util#install() }, 'for': ['markdown', 'vim-plug']}
Plug 'dhruvasagar/vim-table-mode', { 'on': 'TableModeToggle', 'for': ['text', 'markdown', 'vim-plug'] }
Plug 'mzlogin/vim-markdown-toc', { 'for': ['gitignore', 'markdown', 'vim-plug'] }

call plug#end()

关掉重新运行,在nvim中进入命令模式(按冒号" : "),输入PlugInstall完成安装。

运行

打开一个.md文件,命令模式下输入:MarkdownPreview就能自动打开默认浏览器实时预览。或者在init.vim文件中设置快捷键如下:

nmap <silent> <F8> <Plug>MarkdownPreview        " for normal mode
imap <silent> <F8> <Plug>MarkdownPreview        " for insert mode

" 使用谷歌浏览器
let g:mkdp_brower = 'chromium'
let g:mkdp_auto_start = 1

关于markdown-preview.nvim安装后无法运行的问题的解决方案

打开F:\Programs\Neovim\config\nvim-data\site\plugged\markdown-preview.nvim\app文件夹,里面有一个install.cmd脚本,Linux中是install.sh。运行它,等该脚本运行完毕后重新打开nvim普通模式下执行:MarkdownPreview命令一般就能生效了。

引用:

https://blog.csdn.net/m0_52421468/article/details/127867966
https://blog.csdn.net/m0_70129081/article/details/124558701
neovim 安装配置
https://www.jianshu.com/p/88dd20795263
https://blog.csdn.net/qq_40394751/article/details/128747972
https://www.bilibili.com/read/cv21699240/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/457866.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

4.3调整基类成员在派生类中的访问属性的方法

同名成员 在定义派生类的时候&#xff0c;C语言允许派生类与基类中的函数名相同。如果在派生类中定义了与基类中相同的成员&#xff0c;则称派生类成员覆盖了基类的同名成员&#xff0c;在派生类中使用这个名字意味着访问在派生类中重新说明的成员。为了在派生类中使用基类的同…

瑞吉外卖-项目笔记

文章目录 1.业务开发day011.软件开发整体介绍2.项目整体介绍:star:3.开发环境搭建4.登录功能&#xff1a;star4.1代码实现 5.退出功能6.页面效果出现 day021.完善登录功能2.新增员工功能 1.业务开发 day01 1.软件开发整体介绍 2.项目整体介绍⭐️ 后端&#xff1a;管理菜品和…

车载以太网 - SomeIP - 协议用例 - Format_02

目录 11、验证SomeIP-SD Resvered字段设置为0x000000 13、验证SomeIP-SD Entry Type类型设置为0x01(提供服务)

基于脉搏波信号和人工智能方法的应用

目录 一、引言 二、脉搏波信号基本原理和特点 2.1 脉搏波信号的产生和传播 2.2 脉搏波信号的特征参数 三、人工智能技术在脉搏波信号处理中的应用 3.1 传统机器学习方法 3.2 深度学习方法 四、基于深度学习的脉搏波信号处理方法 4.1 数据预处理 4.2 深度学习模型构建…

写题总结1

先把自己写完的总结一下&#xff1a; 题目一&#xff1a; 猫儿园的告示牌上贴着 ab 大小的矩形广告纸。猫猫对广告不感兴趣&#xff0c;她想知道能否用 cd 的矩形白纸完全覆盖这个广告。猫猫可以对白纸进行平移、旋转&#xff0c;但不能折叠或撕开等。如果可以完全覆盖输出 YE…

【音视频第17天】RTSP、RTMP协议初识

被叫去搞直播了&#xff0c;悲喜交加。先学习一下基本的技术栈&#xff0c;RTSP RTMP HTTP 先简单随便看看吧。 目录 什么是流媒体协议RTMPRTMP 工作原理 RTSPRTSP 工作原理 RTMP 与 RTSP 区别详细看看RTSP简介RTSP交互流程OPTIONSDESCRIBESETUPPLAYPAUSESET_PARAMETERGET_PAR…

代码随想录算法训练营第四十一天|343. 整数拆分、96.不同的二叉搜索树

文章目录 343. 整数拆分96.不同的二叉搜索树:star: 343. 整数拆分 题目链接&#xff1a;代码随想录 本题就是一个个递推&#xff0c;通过将dp[i]定义为第i个值的最大乘积 然后最大乘积有两种来源&#xff0c;一个是(i - j) * j 还有一种是dp[i - j] * j; 解题思路&#xff1a;…

Nautilus Chain :基于模块化架构的Layer3正在走向成熟

Nautilus Chain是一个基于Eclipse和Celestia构建的模块化Layer3链。作为定位在Layer0的链基建概念&#xff0c;Eclipse和Celestia为面向未来的区块链扩容技术提供了一套开发工具和基础框架。尽管这种前沿技术过去一直处于概念验证阶段&#xff0c;尚未推出适用于大规模应用的成…

【消息队列】Kafka请求如何被处理的

前言 对于Kafka来说&#xff0c;分为几个阶段&#xff0c;一个是消息的生产请求&#xff0c;以及对应的消息的消费请求。一个是生产者发送到Broker&#xff0c;另一个是消费者通过pull的方式 请求Broker&#xff0c;那么Broker是如何处理这几个请求的。细分下来主要常见的是如…

OFDM-LS信道估计 MMSE信道估计公式推导

假设ofdmN个子载波之间是完全正交的&#xff0c;即不考虑ICI影响&#xff0c;通过发送训练序列来实现信道估计。 其中&#xff0c;在推导6.8的时候&#xff0c;需要将6.6先拆解一下。 X − 1 Y X − 1 ( X H Z ) X − 1 X H X − 1 Z H X − 1 Z X^{-1}Y X^{-1}(XHZ)…

【难学易用c++ 之 继承】

目录&#xff1a; 前言一、继承的概念及定义&#xff08;一&#xff09;概念&#xff08;二&#xff09;继承定义继承关系和访问限定符继承基类成员访问方式的变化 二、基类和派生类对象赋值转换三、继承中的作用域四、派生类的默认成员函数五、继承与友元六、继承与静态成员七…

TiDB实战篇-常用的高可用架构

简介 TiDB实战篇-常用的高可用架构。 高可用要考虑的问题 同城三中心 RTO<35秒 RPO0(因为一个数据中心挂点了&#xff0c;还有其他两个可以提供服务) (优点)数据副本不能在同一个数据中心&#xff08;raft多数存活&#xff09;&#xff08;PD的label标签能够解决这个问题…

OpenCV基础之常见的图像梯度算子

文章目录 OpenCV基础之常见的图像梯度Roberts交叉算子Prewitt算子Sobel算子Laplacian算子 OpenCV基础之常见的图像梯度 梯度是一个向量&#xff0c;梯度方向指向函数变化最快的方向&#xff0c;大小就是它的模&#xff0c;也是最大的变化率。 图像梯度是指在图像中某个位置处沿…

关于容器(Docker)的形象比喻

1 将容器比喻为样板间 容器是一种特殊的进程 容器依赖与Linux操作系统内核的几项技术&#xff1a;namespace、cgroup、chroot namespace 与编程语言里的 namespace 有点类似&#xff0c;它可以创建出独立的文件系统、主机名、进程号、网络等资源空间&#xff0c;相当于给进程…

回归问题(Regression)

Regression 前言Dependent vs. Explanatory VariablesHandle Numerical Labelssquared error和variance什么区别 Linear RegressionLinear Regression in 1 Dimension Least Squares &#xff08;最小二乘&#xff0c;重点&#xff09;Least Squares ObjectiveMinimizing a Dif…

确保软件项目成功——验收测试指南

确保软件项目成功——验收测试指南 在软件项目验收测试中&#xff0c;软件测试报告是非常重要的一部分&#xff0c;需要准备和提交。以山东省在2021印发的《政府采购履约验收管理办法》为例&#xff1a; 省级各国家机关、事业单位和团体组织&#xff08;以下统称“采购人”&…

会话跟踪——JWT令牌

会话指的是浏览器与服务器之间的一次连接&#xff0c;我们称之为一次会话。 在用户打开浏览器第一个访问服务器的时候&#xff0c;这个会话就建立了&#xff0c;只要有任何一方断开连接&#xff0c;此时会话就结束了。再一次会话中是可以包含多次请求和相应。那什么是会话跟踪呢…

动力节点springsecurity笔记14~18SpringSecurity 集成thymeleaf

15 SpringSecurity 集成thymeleaf 此项目是在springsecurity-12-database-authorization-method 的基础上进行 复制springsecurity-12-database-authorization-method 并重命名为springsecurity-13-thymeleaf 15.1 添加thymeleaf依赖 | <groupId>org.springframewor…

vue3+vite3+typescript使用wangEditor编辑器

文章目录 ⭐写在前面⭐步入正题&#x1f680;1.安装&#x1f680;2.配置2.1 存数据2.2 读数据 &#x1f680;3.跨域及其他问题3.1 跨域3.2 其他问题 &#x1f680;4.写在最后 ⭐写在前面 &#x1f680; 框架Vue3 Vite3 TypeScript&#xff1a; &#x1f449; Vue3&#xff…

地铁站人流检测硬件部分

目录 一、概述 二、驱动程序 2.1debug串口 2.2体重传感器HX711 2.3滴答定时器 2.4ESP8266 2.5人体检测 2.6 IIC的GPIO 2.7 OLED的IIC 2.8 LED 三、应用 四、中断 一、概述 使用STM32C8T6作为主控 A9 ---> tx&#xff08;调试串口&#xff09; A10 ---> …