一次 vim 的简单介绍

下面是一次 vim 的组内介绍的大纲。记录一下。 大纲 Vim 多模式编辑器 Normal mode Insert mode Visual mode Command mode 插入模式 i 进入 insert mode,在光标为之前进入插入模式 I 行首非空字符前插入 , I 等同于 `^i` s 删除光标下字符,并进入 insert mode, 等同于 `cl` S 删除光标所在一行,并进入 insert mode 行首 , 等同于 `^C` a 光标之后进入 insert mode A 光标移动到行尾并进入 insert mode , 等 Read more ...

2017-11-05 vim , linux , editor

在 Linux 下安装 Charles

Charles 是Mac上一款非常流行的抓包软件 , 但其实各大平台上 Charles 都有安装包。这篇文章主要就是讲一下在 Linux 平台上(Debian/Ubuntu) 系上安装 Charles 。 使用 APT 源安装 Charles 拥有 APT 源,首先安装 PGP 公钥,当前公开的秘钥为 1AD28806, 他的 fingerprint 为 4BA7 DB85 7B57 0089 7420 96E1 5F16 B97C 1AD2 8806: wget -q -O - https://www.charlesproxy.com/packa Read more ...

2017-11-04 linux , charles , http , mitmproxy , https , android , ios , tcp

Vim 中的寄存器

计算机中通常所说的寄存器 Register 一般指的是 CPU 中的寄存器,用来暂存 CPU 处理所需要的指令,数据等等。 Vim 中同样也有寄存器的概念,使用的方式和概念也和 CPU 是非常类似的。 Vim 的寄存器可以看成 Vim 中额外用来存储信息的区域,虽然看不见,但是如果使用 x, s, y, p 等等命令的时候都无意识的使用到了 Vim 的寄存器 (register). Vim 中每一个 register 都可以通过添加双引号的方式来访问,比如 "a 来访问 a 寄存器。 可以通过选择然后使用 y 来将内容放到寄存器中,比如 "ay 来 Read more ...

2017-11-03 vim , linux , editor , skill , vim-register

Vim 的 normal 命令

normal 命令指定是 Vim 下可以通过 normal 来指定执行 Normal 模式下的命令,以便于达到快速编辑大量文本的操作。 比如说要批量注释一批代码,需要在行前插入 # 替换: :%s/^/#/g visual block: gg<Ctrl-v>I#<Esc> 注释第一行后用 dot command 重复执行每一行 . 我们可以用 normal 命令实现上述需求,步骤: 光标定位到首行,执行: I#<Esc> 选中之后的所有行 jVG 然后执行 :'<,'>n Read more ...

2017-11-03 vim , linux

Vim 中的宏命令

Vim 的设计哲学中有这样一句话:”if you write a thing once, it is okay. However if you’re writing it twice or more times, then you should find a better way to do it”. Vim 的 Macro 就是用来解决重复的问题。在 Vim 寄存器的文章里面已经对 macro 有所涉及, macro 的操作都是以文本的方式存放在寄存器中。 简单使用 录制 macro,在普通模式下使用 q + [a-z] 26 个字母中的一个: Read more ...

2017-11-03 vim , linux , editor , vim-macro , vim-register

有一个全平台的Markdown编辑器--Typora

很早开始我就使用 haroopad ,同样是一款简洁,跨平台的 markdown 编辑器,而在 Linux 平台除非遇到特殊情况想要仔细预览效果,我也一般都只在 Vim 中直接以纯文本形式编辑 markdown。但是为什么要再来试用这样一个编辑器呢,一是我不止一次得看到别人推荐,二来也是好奇心作祟。 Typora 一如她官网 —- https://typora.io/ 的简洁。没有多余的元素,直接面向文本,好评。下面也不用介绍他的功能多少多少,这种一般直接看他的官方 feature 介绍,看使用帮助就行。下面就介绍几个比较让我开心的功能。 更加快捷的 Read more ...

2017-11-02 Typora , markdown , Linux , Windows

每天学习一个命令:ifconfig 查看网络配置信息

Windows 上有 ipconfig ,Linux 上有一个类似的工具,就是 ifconfig (interfaces config)。ifconfig 工具不仅可以被用来简单地获取网络接口配置信息,还可以修改这些配置。 慎重提示:下面的所有相关命令,在清除明白其含义之后再输入到终端,另外不要远程到服务器执行,下面的命令可能导致远程服务器网络配置异常 命令格式 ifconfig [device] [parameter] 命令功能: ifconfig 命令用来查看和配置网络设备。当网络环境发生改变时可通过此命令对网络进行相应的配置。 命令参 Read more ...

2017-10-31 linux , command , network , ip , arp

headless chrome puppeteer

Headless 最早的时候在 PhantomJS 听说过这个概念,后来在 GitHub 各种项目中总有人不断提起这个概念,而最新看到的新闻便是 Chrome 开始支持 Headless,也正激起了我了解的欲望。 什么是 Headless Chrome Headless Chrome 是一个没有前台界面,只在后台运行的浏览器。浏览器正常的所有解析,渲染都可以由其完成。而开发者可以通过 client 和这个浏览器建立连接,通过 Google 提供的 Chrome DevTools Protocol 协议 来进行交互。总的来说 Headless 浏览器提 Read more ...

2017-10-31 chrome , headless-chrome , linux

vimrc 配置中 Vim 键映射

Vim 本身有很多快捷键,vimrc 也可以配置很多快捷键,当然 Vim 也支持将不同的键映射到不同的键或者命令上。 最常见的键映射就是 nmap vmap imap 分别对应着修改普通模式 (Normal) ,选择模式 (Visual),和插入模式 (Insert) 下的键映射。 对于这几种模式,可以参考 Vim 模式 Map 命令 其实对于 map 命令的种类远不止于此 noremap 非递归映射 non-recursive nmap vmap imap cmap 在命令模式下生效 递归映射的意 Read more ...

2017-10-30 vim , linux , editor

Vim 全局命令 g

全局命令 :g 在 Vim 中有着意想不到强大的功能。当想要在整个文件中对于匹配的行或者不匹配行进行一些操作时,应该第一时间想到这个 :g 命令。 :[range]global[!]/{pattern}/{command} 简写可以写成 :[range]g/pattern/command [range] 指定文本范围,默认为整个文档 pattern 在范围 range 内的行如果匹配 pattern,则执行 command ! 表示取反,也就是不匹配的行,也可以使用 vglobal command 默认是打印文本 整个命 Read more ...

2017-10-29 Vim , Regex , Linux

最近文章

  • screen.garden:让 Obsidian 拥有 Google Docs 般的实时协作体验 之前我介绍过 Fast Note Sync,这是一款开源的 Obsidian 笔记同步方案,可以实现多设备之间的笔记同步和实时协作。Fast Note Sync 的优势在于完全开源、数据自主可控,但它有一个门槛——你需要自己搭建和维护服务器。对于有技术背景并且享受折腾的朋友来说这不是问题,但如果你不想操心服务器的事情,或者团队里有非技术背景的成员,那么一个开箱即用的托管服务可能是更好的选择。这就是我今天要介绍的 screen.garden,一个为 Obsidian 设计的付费实时协作服务。
  • Clawdbot 深度调研:打造完全属于自己的全平台 AI 助手 最近在折腾各种 AI 工具的时候,发现了一个有意思的现象:市面上大部分 AI 助手要么被牢牢绑定在某个特定平台上(比如只能在 Discord 里用的机器人),要么就是完全依赖某家公司的 SaaS 服务,你的对话数据都在别人的服务器上。作为一个对隐私比较在意的人,我一直在想,能不能有一个完全由自己掌控、可以在所有常用聊天软件里使用的 AI 助手呢?直到我在 GitHub 上发现了 [[Clawdbot]] 这个项目,才发现原来真的有人在认真解决这个问题。
  • 推荐我使用的 Agent Skills 随着 AI 编程助手的快速发展,[[Claude Code]]、[[Codex]]、[[Gemini CLI]] 等工具已经成为开发者日常工作中不可或缺的伙伴。然而,这些工具的默认功能往往只是冰山一角。通过安装和配置 Agent Skills,我们可以大幅扩展这些 AI 助手的能力,让它们更加智能、更加专业。
  • Antigravity Agent Skills 功能介绍与实战指南 2026 年 1 月 14 日,[[Google]] 为其 AI 驱动的开发工具 [[Antigravity]] 推出了 Agent Skills 功能。这个开放标准的技能系统让开发者可以将专业知识打包成可复用的技能包,极大地扩展了 AI 智能体的能力边界。
  • Gemini CLI Agent Skills 功能介绍与上手指南 [[Gemini CLI]] 最近推出了一个非常强大的新功能,名为 [[Agent Skills]]。这个功能极大地扩展了命令行 AI 助手的边界,允许用户根据自己的需求定制专业的技能包。