Vim:移动和撤消、更改命令
· ☕ 2 min read
Vim 光标移动 Vim 中有着大量的快捷键来帮助我们完成快速跳转以及快速定位。 1. G 和 gg 定位行 ”nG“ 表示定位到第 n 行,当只有G 而没有计数前缀时,表示移动

配置SSH登入远程Linux
· ☕ 1 min read
所谓公钥登录,就是用户将自己的公钥储存在远程主机上。登录的时候远程主机回向用户发送一段随机字符串,用户用自己的秘钥加密后再发送给远程主机。远

关于Vim不能正常显示中文的解决方法
· ☕ 1 min read

这类问题一般都是由于编码问题导致的。在 ~/.vimrc 添加如下设置:

1
2
3
4
set fileencodings=utf-8,gb2312,gbk,gb18030  
set termencoding=utf-8  
set fileformats=unix  
set encoding=prc

保存退出。


KVO & KVOController
· ☕ 5 min read
KVO的实现机制 KVO 是 Objective-C 对观察者模式的实现。从苹果的 文档 中对于它的实现描述可以知道: KVO 是通过 isa-swizzling 实现的。 当你观察一个对象时,该对象的isa指针被

Carthage的简单使用
· ☕ 1 min read
Carthage 是和 Cocoapods 类似的第三方库管理工具。和 Cocoapods 相比,Carthage 仅导入 framework 文件,做到更少的入侵性。但是Carthage 仅支持动态框架,只支持iOS 8

Hugo 主题 Gemini
· ☕ 2 min read
最近在https://www.linpx.com/上看到了博主的博客主题,感觉很漂亮,不过是Typecho 主题的。于是便用了周末的时间将它转

Objective-C Messaging
· ☕ 5 min read
消息传递(Messaging) 在C语言中,调用一个方法其实就是跳转到内存中的某一点,并开始执行一段代码。没有动态特性特性,因为这个是在编译时

Protocol Buffer Objerctive-C Compiler(protoc)
· ☕ 3 min read
什么是Protocol buffers? Protocol buffers are a language-neutral, platform-neutral extensible mechanism for serializing structured data. Protocol buffers 是一种以有效且可扩展的格式对结构化数据进行编码的方式。它和xml类似,但是比xml更轻量

记 OpenConnect VPN server 的搭建
· ☕ 5 min read
目前我认为最好用的 VPN 是 shadowsocks 。配合 Chrome的 SwitchyOmega 可实现是否通过代理服务器访问。 很遗憾在苹果设备上,很好支持 shadowsocks 的 App 的价钱很高。因此只能使用系统支

VPS:搭建shadowsocks服务器
· ☕ 1 min read
shadowsocks有多个版本,目前相对稳定的是python版本和C版本(shadowsocks-libev),前者可以通过配置开启多端口

读:《Objective-C高级编程》之GCD
· ☕ 8 min read
什么是GCD Grand Central Dispatch(GCD)是异步执任务的技术之一。一般将应用程序中记述的线程管理用的代码在系统级中实现。开发只需要定义想执行

Swift:Automatic Reference Counting in Swift
· ☕ 12 min read
原文地址:Automatic Reference Counting 翻译: https://www.cnswift.org/ Swift 使用自动引用计数*(ARC)*机制来追踪和管理你的APP的内存使用。在大多数情况下,这意味着内存管