最近开始使用Atom编辑器写作。为了预览带LaTeX公式的markdown文档,尝试安装插件markdown-preview-plus,但是总是失败。经过仔细查看错误输出和网上相关问答,发现尽管报错为Compiler tools not found,真实原因其实是网络不通畅(GFW)。由于无法使用代理上网,最后只能手动安装完成,摸索过程记录如下。其他插件的手动安装,也可以参照本文。

简单摘要:从github下载并手动安装插件;用nrm测试和切换npm源;用npm-install-missing批量安装模块。

安装插件

首先找到该package的代码库。

下载zip文件,并解压到 Users\..\.atom\packages\ 文件夹中。

在 cmd 下切换到该目录,执行 apm install markdown-preview-plus

此时仍会报错,并且打开Atom后会出现 Cannot find module fs-plus 错误信息,但是已经可以在Packages菜单下找到该插件。

这是因为手动安装时,只安装了这个包,没有安装它的若干依赖模块。

安装缺失模块

首先安装 node.js

如果想手动安装fs-plus这一个模块,可以在上述markdown-preview-plus的目录下执行 npm install fs-plus。但是这样安装完成之后还会源源不断地提示缺少其他模块……由于 markdown-preview-plus 这个包的依赖模块比较多,不能一个一个手动安装,最好借助其他工具批量安装。

为了批量安装所有依赖模块,首先安装 npm-install-missing 工具,即执行 npm install -g npm-install-missing

然后在markdown-preview-plus目录里执行 npm-install-missing

这一步再次报错 Registry returned 404 for GET on....,同样是因为墙的缘故。解决方案是切换源。

首先执行 npm install -g nrm,这是源的管理工具。安装成功后,便可以用 nrm ls 列出可选源,nrm test 测试连接时间,方便地在不同源之间切换。测试结果显示,我这里最快的源是 cnpm,于是执行 nrm use cnpm 来切换到它。

最后,再次 npm-install-missing,这次安装成功!

现在可以打开 Atom 编辑器,停用默认的 markdown-preview 插件,启用 markdown-preview-plus,通过快捷键 Ctrl+Shift+m 切换源文件和预览窗口。

Atom手动安装插件和模块的解决方案的更多相关文章

  1. 使用sublime text3手动安装插件

    众所周知,由于网络问题,使用install package可能会连不上服务器,这时候就不得不手动安装插件了. 其实sublime安装插件的原理就是当你搜索一个插件并安装的时候,它回去github找到这 ...

  2. sublime text3 手动安装插件package control

    好久没写了,今天换了新电脑,先安装前端神器“sublime” 一,安装 下载sublime,官方网址:http://www.sublimetext.com/: 二.插件包安装( Package Con ...

  3. AndroidStudio手动安装插件

    由于网络原因,android studio 的插件市场经常不能打开或者不能下载,这种情况我们可以手动下载插件的压缩包,再手动安装. 第一步,打开https://plugins.jetbrains.co ...

  4. Atom本地安装插件右上角出现红色报错解决方案

    在github上搜索你相中的插件(Package),并下载ZIP包或直接克隆项目到本地.然后将该包直接复制到C盘中的用户下的 .atom\packages\ 文件夹下,注意 atom前面有一个点. 然 ...

  5. atom无法安装插件的解决方法之一

    atom通过setting中无法下载插件,通过apm也无法下载插件,可能是网络.config配置的问题,不好解决. 下面的方法全手动,基本属于万金油方法: 1,在atom的setting页面中点击op ...

  6. jenkins手动安装插件

    插件下载地址: 搜索:https://plugins.jenkins.io/ 列表:https://updates.jenkins-ci.org/download/plugins/ 打开jenkins ...

  7. atom无法安装插件的解决方法

    atom通过setting中无法下载插件,通过apm也无法下载插件,可能是网络.config配置的问题,不好解决. 下面的方法全手动,基本属于万金油方法: 1,在atom的setting页面中点击op ...

  8. atom编辑器安装插件报错。。

    Checking for native build tools failed gyp info it worked if it ends with ok gyp info using node-gyp ...

  9. 手动安装sublime插件babel-sublime

    (一)手动安装babel 在开发reactjs开发使用sublime时,想要代码高亮显示,需要安装babel-sublime插件,在Preferences中的Package Control菜单搜索In ...

随机推荐

  1. 基于 Koa平台Node.js开发的KoaHub.js的控制器,模型,帮助方法自动加载

    koahub-loader koahub-loader是基于 Koa平台Node.js开发的KoaHub.js的koahub-loader控制器,模型,帮助方法自动加载 koahub loader I ...

  2. 1349: [Baltic2006]Squint

    1349: [Baltic2006]Squint Time Limit: 1 Sec  Memory Limit: 64 MBSubmit: 427  Solved: 248[Submit][Stat ...

  3. JAVA高级总结

    一.集合框架和泛型 1.集合框架 1) 定义:JAVA API的一部分,用于处理一组长度可变得数据. 2) 和数组的区别: 数组的长度不可变,但是集合框架处理的数据长度可以动态变化. 3) 结构: 接 ...

  4. hdoj1421(bfs)

    bfs 练习题,简单bfs 题意:给一块地图,找出油田的块的数量,这里要考虑油田的八个方向,上下左右(左右)上(左右)下,存在则可以并在一起.@是油田,*是土地,m是行,n是列. 解题思路:用一个二维 ...

  5. linux 部署jenkins

    1.安装jdk,配置jdk路径,python路径 (当前用户的配置文件)  vi .bash_profile export JAVA_HOME=$HOME/local/jdk1.8.0_111 exp ...

  6. jQuery中$.extend(true,object1, object2);深拷贝对象

    语法:jQuery.extend( [deep ], target, object1 [, objectN ] ) 深浅拷贝对应的参数就是[deep],是可选的,为true或false.默认情况是fa ...

  7. 《Machine Learning》系列学习笔记之第三周

    第三周 第一部分 Classification and Representation Classification 为了尝试分类,一种方法是使用线性回归,并将大于0.5的所有预测映射为1,所有小于0. ...

  8. hibernate 三种状态的转换

    一.遇到的神奇的事情 使用jpa操作数据库,当我使用findAll()方法查处一个List的对象后,给对这个list的实体进行了一些操作,并没有调用update 或者 saveOrUpdate方法,更 ...

  9. 初识 Javascript.02 -- Date日期、Math对象、数据类型转换、字符串、布尔Boolean、逻辑运算符、if else 、三元表达式、代码调试方法、

    Date()对象: Date对象用于处理日期和时间. 1.1 Math对象  ◆Math.ceil()   天花板函数    向上取整  只取整数,不足则进1 ◆Math.floor()  地板函数 ...

  10. 【一通百通】c/php的printf用法

    1.先说说PHP printf()函数: printf()函数的调用格式为: printf("<格式化字符串>", <参量表>); %d 十进制有符号整数  ...