Git 设置和取消代理 设置代理12git config --global http.proxy 'http://127.0.0.1:10800'git config --global https.proxy 'http://127.0.0.1:10800' 注:此处设置的代理 ip 和端口号都是本地存在的(SS/SSR 默认就是)。 取消代理12git config --global --unset http.p
工具网站 前端 2019 前端开发者学习路线汇总 工具 i18ns: 国际化 i18n 全语言翻译 codepen: 前端页面代码分享(HTML/CSS/JavaScript) appsgeyser: 封装前端/网站为 App cloudflare: CDN/免费的 HTTPS netlify: 前端免费 CI(持续集成) smms: 免费稳定的图床(国内) office-converter: 文档在线转
实现一个玩具 lisp 运行时与解析器 前言之前看元循环求值器一节中使用 lisp 实现了一个 lisp 的运行时,吾辈也尝试使用 ts 来实现它。首先,这里展示一张曾经在书中出现过的图,表示一个运行时的基本组成是由 eval 和 apply 组成(看起来很像太极就是了)。eval 负责执行一个表达式,在 lisp 中,所有的代码都是表达式,这没什么问题。apply 则负责执行一个函数,将计算实参列表,并创建一个新的闭包环境绑定到形参上
流与延迟计算 前言在此之前,吾辈介绍了如何 从函数中无中生有的构造数据结构。现在,吾辈将使用它构造一个更强大的数据结构:Stream(流)。 或许你曾经见过这张图 一些数据经过一系列的处理,然后得到结果,而只需要迭代每个元素一次,就像魔法一样。 之前的想法最初,吾辈的想法是让操作保存起来,只有等待某个显式调用的时候才真正执行。 即调用 map/filter/reduce 时将 action 与参数保存起来,等
cons: 无中生有的数据结构 前言lisp 中有一种有趣的数据结构,Cons,它使用函数闭包封装了一个两元组的数据结构,并在此之上构建出其他需要的任何数据结构。在此之前,虽然也知道闭包之类的概念,写过一些高阶函数,但并未想过可以使用函数来构建数据结构,下面吾辈会说明如何在 ts 完成。 lisp cons 的 wiki 基本定义如下 $$c=cons(a,b)\car(c)=a\cdr(c)=b$$ 初始实现cons 初始
vite 构建正确内联 svg 资源 场景目前 vite 构建时内联媒体资源的功能有 bug,从 2020 年底就已经存在一个 github issue,感觉短期不太可能解决,于是吾辈决定自行使用插件恢复这个功能。 下面是一个使用 vite 构建的 dist,可以看到其中的 svg 并未被正确内联到代码中,而是单独分割为了一个 bundle,而 jpg 图片则被正确内联。 现有插件为什么不使用插件 @rollup/plugin-im
前端使用工具强制实行代码规范(Vue) 场景 GitHub Demo 非强制性的规范都不会成为真正的规范。在之前,我们也会在团队内编写一些开发规范文档,却总是不能真正有效的执行下去,原因何在? 其一,人是健忘的,就算真正看完了规范文档,也不可能记住每一条规范,并且在代码中正确实践。 其二,人是懒惰的,即便有着规范,但只要写代码的时候没有强制性,那总是不会在意的。 那么,使用自动化的工具是为首选,而前端恰好有了一些可用的工具来帮助我
使用 ESBuild 插件机制实现需要的功能 前言esbuild 是一个通用的代码编译器和构建工具,使用 golang 构建,它非常快,性能上比现有的 js 工具链高 1~2 个数量级。它目前还不是一个开箱即用的构建工具,但通过它的插件系统,我们已经可以做到许多事情。 自动排除所有依赖项在构建 lib 时,我们通常都不希望捆绑依赖的模块,希望能够默认排除掉所有的依赖项,这个插件就是用来实现这个功能的。它会将所有不是以 . 开头的导入模块设置
读书笔记-低智商社会 为什么我们的企业家都忌讳向亚洲国家学习,没有人质疑过为什么日本不能借鉴中国好的东西(比如说向民众转让更多的权利等) 【批注】本质上并非如此,目前更加封闭专制了 Q:日本股市有什么理由能保持上涨? 【批注】话虽如此,我也确实不了解股市。但我相信,经济危机会影响全球,不可能有人能独善装身。 Q:“引进外资有害,所以要维护日本本土企业的利益。”我想这就是现在大家公认的“日本的常识”,那么请从经济全球
VSCode 搭建 markdown 写作环境 场景Markdown 是一种轻量级的标记语言(Wiki),目前已经是很流行的写作语言了。因为 Markdown 真的非常简单,易读易写是 Markdown 的目标。然而,虽然 Markdown 已经足够简单了,但我们还是希望能有一个专门的写作环境,用于实现诸如 语法高亮,快捷键,即时预览,导出其他格式 等功能。而如果你和吾辈一样是个 Developer,那么 VSCode 应该是最好的选择,不仅能
Code Review 漫谈 02 场景继上次的 code review 之后,吾辈这两天在迁移 vpn ip => domain 的过程中,需要帮忙修改一些之前写死的 vpn ip 地址为动态从后端获取,所以有幸见到了一些有趣的代码,便于此继续分享一下。 在 vue3 项目中仍然写 vue2 的 options 组件 完全没有分层的概念,想到哪儿写到哪 神奇的获取 url 参数的方式及变量命名 错误处理仅仅只是打印在控制台
Windows 上 Maven 安装与使用 官网, GitHub 介绍Maven 已经是 Java 事实上的依赖管理标准工具了,所以学习使用 maven 有益无害。 前置要求 必须已经安装了 JDK 并设置了环境变量,如果还没有安装,请参考 Windows 上安装 JDK 并设置环境变量 进行安装 下载在官网 下载页面 找到 Binary zip archive 下载二进制数据。 这里不使用二进制安装包的原因是绿色版更容易迁移,