Vim 插件之:vim-abolish

vim-abolish 又一款 Tim Pope 大神所制作的插件,这款插件扩展了一条名为 :Subvert 的自定义命令,作用类似于 Vim 内置命令 :substitute 的扩展。 https://github.com/tpope/vim-abolish 比如说想要将整个文档中的 man 和 dog 两个单词交换,如果用 Vim 原生的替换比较麻烦,而使用该插件则只需要 :%S/{man,dog}/{dog,man}/g 在 GitHub 页面上也有大量的使用方式介绍,这里再提一个官方页面上的用例,比如想要把所有的 facility Read more ...

2019-09-22 vim , vim-plugin , tim-pope

Vim global 命令

global 命令结合了 Ex 命令和 Vim 模式匹配的能力,借助该命令,可以在指定模式的所有匹配行上运行 Ex 命令。global 命令是除了点操作和宏命令之外,最强大的 Vim 工具之一。 Basic global 命令基本形式,可以读作在 range 上,如果行匹配 pattern,那么执行全局命令 cmd :[range] global[!]/{pattern}/[cmd] 说明: 缺省情况下,global 命令作用范围是整个文件 (%). 除了 global 还有 :vglobal 表示反转,在没有匹配 pattern 的 Read more ...

2019-09-22 vim , vim-global , ex-command , vim-mode , editor , linux

Oracle 提供免费的云服务

前两天在 Twitter 上看到有人分享新闻说,Oracle 发布了新的云服务政策,提供 Always Free 的主机和对象存储还是数据库,所以就看了一下,搜了一下新闻,还真的有 Oracle Offers Always Free Autonomous Database and Cloud Infrastructure,所以就注册一下。但是当天晚上创建 VM 的时候提示我 “out of host capacity”,Google 了一下才发现,原来这条消息早就在羊毛党炸锅了,不亚于 Google Cloud Platform 当年的新闻。不过我个人作 Read more ...

2019-09-22 linux , oracle , gcp , cloud , vps , server

ModuleNotFoundError: No module named 'marshmallow.compat'

今天重新部署一个服务时发现了一个奇怪的错误,之前用很久都没有错,重新部署一个新环境就发生了这样的问题,问题应该就出现在新依赖的包中。 File "/usr/local/lib/python3.6/dist-packages/flask_marshmallow/fields.py", line 15, in <module> from marshmallow.compat import iteritems ModuleNotFoundError: No module named 'marshmallow.compat' 所以搜了一圈 Read more ...


又一 Google 服务停止:Google Translator Toolkit 关闭

前两天收到一份邮件,标题写着 Google Translator Toolkit to be shut down on December 4, 20191,感叹又一款良心服务要终结其生命了。虽然不常用 Google 翻译工具包,甚至很长时间这个翻译工具都偷偷的被隐藏在翻译页面的角落里面,但是不得不说这个工具曾经帮助我翻译过不少文档内容,也非常适合学习。Google 翻译工具包提供上传文档自动翻译,术语翻译等等功能,结合 Google Translate 的帮助能非常快速的辅助完成一篇文档的翻译。在自动翻译完成的基础上可以人工的进行修改润色。更甚至可以添加 Read more ...


gpg: keyserver receive failed: Server indicated a failure 解决

在 sudo add-apt-repository 添加 PPA 时突然遇到 gpg 添加 key 失败,大概知道可能是因为网络问题,但是这个问题在我家里的网络一直存在,非常恼人。 gpg: keyserver receive failed: Server indicated a failure 所以我想从根本上解决这个问题,这个问题的根源可能是因为网络问题导致 gpg key 没有被导入到本地。所以如果能够手动下载 gpg public key 然后手动导入不就可以了? 所以随意打开一个 PPA,比如 https://launchpad Read more ...

2019-09-20 gpg , ppa , ubuntu , apt-repository

Linux 下使用 emoji

Ubuntu 或者其他一些 Linux 发行版 (Debian/Ubuntu/Linux Mint) 会内置 Google Noto Color emoji font,如果没有也可以直接通过一个命令直接安装 Noto Color emoji. 安装字体 首先要安装支持 Emoji 的字体,个人比较喜欢 Google Noto Color Emoji,这是 Google 开源的用于 Android 的字体。并且支持力度一直都非常大。 Noto color Emoji 直接安装 sudo apt install fonts-noto-color-emo Read more ...

2019-09-12 linux , ubuntu , linux-mint , mint , emoji

java reflection

Java 中的提供了一组 API 用来在运行时动态修改方法,类,接口的行为,这个被称为 Reflection。 For every type of object, the Java virtual machine instantiates an immutable instance of java.lang.Class which provides methods to examine the runtime properties of the object including its members and type information. Read more ...

2019-09-11 java , jvm , java-reflection

Java 查漏补缺:Java 8 中接口 default 方法

Java 8 新特性: lambda expressions functional interfaces method references streams Optional 还有 interface 中的 static 和 default 方法。 基本使用 Java 8 允许在接口中定义默认方法。 interface Collection { void add(); default void debug(){ System.out.println("put the key in"); } } 为什么要 Read more ...

2019-09-10 java , java8 , interface

理解 GraphQL Schema 结构定义

在上一篇 GraphQL 使用 中了解了 GraphQL 大致用法,如果要更加深入的了解 GraphQL ,那就不得不重新从 Schema 来认识 GraphQL,说到底 GraphQL 还是一个强类型定义,客户端可操作的类型都是需要提前定义好的,这个结构就是这篇文章的重点 – Schema. 因为已经有很多的语言已经实现了 GraphQL,官方不能以某一个语言来具体表达,所以他们自定义了一套表示 GraphQL Schema 的简单表达。1 GraphQL 支持的数据操作 GraphQL 对数据支持的操作: 查询 Query,获取数据的基本 Read more ...


最近文章

  • Google Code Wiki:让 GitHub 仓库秒变代码百科全书 之前 Devin 团队推出了一款 DeepWiki 的网站,可以用来解释 GitHub 的代码仓库。今天偶然发现 Google 也推出了类似的产品,叫做 Code Wiki。
  • Typeless: 又一款 macOS 上的 AI 语音输入利器 看过我博客的人会发现,我在这半年的时间里面体验了非常多的语音转文字工具,可以说,这样的工具极大地提升了我的生产效率。不仅搭配 Obsidian 可以更快地写笔记,搭配 Claude Code 等编程工具也可以让我更快地输入提示词。体验到后面,遇到类似的产品,我一般也不会单独地出一篇文章,但是今天体验完了 Typeless,我觉得它值得写一篇文章,单独介绍一下。
  • Gemini CLI 使用小技巧 本文记录 Gemini CLI 使用过程中一些容易被忽略的问题,以及使用小技巧。
  • 在 Obsidian 中使用 Gemini CLI 从 2020 年开始使用 Obsidian 算起,到今天也已经快 5 年了,这个过程中我将过去将近 10 年的笔记,包括 Evernote,WizNote 中的笔记,豆瓣上的笔记全部转成了 Markdown 保存到了本地,后来陆陆续续使用的比如 [[Voicenotes]] 也都转成 Markdown 存如 Obsidian。虽然过去纪念陆陆续续在整理,但是实际上每天添加到笔记库中的内容要远多于要整理阅读的内容,笔记仓库也是越来越大,所以我越来越想使用一个工具可以帮助我真正地理解我写下的东西,并且在我想使用的时候能快速的找回。
  • Z-Image-Turbo 高性能 AI 图像生成模型 Z-Image-Turbo 是由阿里巴巴集团开发的高性能图像生成模型,基于 Z-Image 原始版本进行了深度蒸馏和强化学习。 这个模型采用了 6B 参数的轻量级设计,但能够在保证质量的前提下,实现闪电般的生成速度。