闻心阁

一蓑烟雨看苍生,半壶浊酒笑红尘

VS Code 匹配中文

2018-05-28 约 1 分钟读完 搬砖秘籍
最近要把手头的一个项目支持国际化,在 VS Code 中要把中文全部搜索出来,直接用到了正则(VS Code 支持正则搜索)。 [\u4e00-\u9fa5] 搞定。

Mac下管理Java多版本的实践心得

2018-05-22 约 1 分钟读完 搬砖秘籍
在 Mac 下要跑一个公司大神给的项目,后端用到了Java 8,做为一个不起眼的前端开发,在见到Java代码之后是蒙的,好在小龙大哥的指导,才让我这Java跑起来。但是,在被前端的node坑过之后,我想起了一个恐怖的问题:Java 下是不是也有多个版本? 是 为了避免后面大神再给我一个 Java 1.7 的项目,于是我决定找办法在电脑上管理多版本的 Java。 神器 jEnv jEnv - Manage your Java environment 是一个用于管理Java多版本的工具,其使用方法推荐参考官网的方法。本文做一些节选,不保证最新哦。 安装 jEnv brew install jenv 如果用的bash echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile echo 'eval "$(jenv init -)"' >> ~/.bash_profile 如果用的zsh echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc echo 'eval "$(jenv init -)"' >> ~/.zshrc 安装 Java jEnv 和 nvm 不一样,并不提供下载 Java 特定版本的功能(截止2018-05-22),所以需要自己手动安装。Java 6 需要从Apple webiste下载安装,Java 7、Java 8、 Java 10可以直接从官网下载。 配置 jEnv 使用如下命令: // 1. 继续阅读

Error: write after end的解决方案

2018-05-21 约 1 分钟读完 搬砖秘籍
最近在看之前的大神写的一个项目,出现了 Error: write after end 的报错信息,导致项目始终跑不起来。开始以为是我网络的问题,又是加VPN,又是挂代理,后来发现并没有用,还是install不上,后来查了一下,发现与npm版本有关。总结了下面几个解决方案。 安装特定版本npm 使用如下命令 npm install npm@4 -g 其中,@ 后接的是npm的版本。这种方法也可用于npm的降级。 切换node版本 通常这种项目是使用某一版本的node及其带的npm开发的,所以只要切换相应的node版本就可以了。笔者推荐使用nvm,运行如下命令 nvm install 6.14 nvm use 6.14 就可以了,如果要设置永久的node版本,使用如下命令 nvm alias default 8.1.0 结语 npm 这个快速发展的项目还是有的太多的不完善和不方便。虽然目前有了类似 yarn 的解决方案,但还是需要一个过程。

bitbucket 国内生存指南

2018-05-20 约 1 分钟读完 百宝箱
bitbucket 是Atlassian公司提供的一个基于web的版本库托管服务,可以简单的理解为 github。那为什么有了 github 还要用 bitbucket 呢?某些项目,可能不想开源,并且也需要代码托管,也就是所谓的私有项目。bitbucket 的免费版本就可以使用私有代码管理了。 最近笔者从国内的 coding 迁移到了 bitbucket(为什么切?因为用不起),却发现 bitbucket 有时候打开速度很慢,这里总结几个方法。 PS:后面的前提是你有代理,最好是SS代理。 打开网页 Bitbucket在国内打开速度很慢,找了一下也没有合适的host,所以自己挂个代理吧。 push/pull 代码慢 在 .ssh 目录下,找到 config 文件(不是文件夹,没有后缀名。如果没有就新建一个),添加下面的代码: Host bitbucket.org IdentityFile ~/.ssh/你的id_rsa文件 User 你的用户名 Port 22 ProxyCommand connect -S 127.0.0.1:1080 %h %p 最后一行的端口也请修改成你的SS在本地监听的端口。 后话 没什么想说的了。

Vim YouCompleteMe 使用整理

2018-05-03 约 1 分钟读完 搬砖秘籍
YouCompleteMe 是我使用 Vim 的必备插件,同时也是最难装的插件,没有之一。本文记录笔者在使用这个插件的一些心得,嗯,这个会持续更新的。 安装 在 Manjaro 上安装没有遇到过什么问题,基本按照文档一路来就好。 在 macOS 上因为要用到 python,并且 macOS 系统自带的 python 并没有安装 pip,所以要麻烦一些,解决方案看这里:macOS切换Python2和Python3的探索 ultisnips 冲突 Vim 的 ultisnips 插件也使用的是 tab 触发,这里会有冲突,解决方法,在 .vimrc 中加入下面的代码: let g:ycm_key_list_select_completion = ['<Down>'] let g:ycm_key_list_previous_completion = ['<Up>'] 把 ycm 的前一项和后一项绑定到小键盘上。 巧用 .tern-project 文件 最新版本的 YCM 已经兼容了 Tern,在我们开发 JavaScript 相关项目时,可以在根目录配置这个文件来增强这个插件的能力。 示例(React): { "ecmaVersion": 6, "libs": [ "browser" ], "loadEagerly":[ "node_modules/react-dom/dist/react-dom.js", "node_modules/react/dist/react.js", "node_modules/react-dom/dist/react-dom.js", "node_modules/react-dom/dist/react-dom-server.js" ], "dontLoad": [], "plugins": { "es_modules": {}, "node": {} } } 关于这个文件的详细写法可以参考这里:tststs/atom-ternjs

使用jquery.simple-scroll-follow实现滚动跟随

2018-05-03 约 1 分钟读完 搬砖秘籍
在开发麻辣GIS的时候需要实现一个滚动跟随的效果,写得自己脱了一层皮,各种计算,不过好歹实现了。最近把个人博客也想加上这个效果,不想再重复造一次轮子。于是发现了这个:sutara79/jquery.simple-scroll-follow 尝试使用了一个发现还不错,比自己重新写一次要好得多。不过有些效果还是自己手动调教。 Demo 本站右侧的广告就是了,但触底的效果还是有点问题,等我搞定了再来总结一下。

Cyberduck-macOS下好用免费的FTP管理软件

2018-05-03 约 1 分钟读完 百宝箱
FTP是管理我使用任何系统都必不可少的软件,如果没有其他问题的话,我还是推荐 Filezilla,这个软件做的足够用,并且跨 Windows Mac Linux 三大平台,就是这么霸气。 那为什么推荐 Cyberduck 因为某些限制,我的 MacBook Pro 无法安装免费的 Filezilla,付费的用不起。 有其他的没? 如果不想花钱的话,这是我能找到唯一免费也好用的了。可能免费的 Filezilla 足够好,没多少人开发吧。 下载 Cyberduck 下载 PS:Windows Mac 平台均可用。