ssh 以及 git 如何使用指定的 SSH key 进行连接?


Coder Life

最方便的方法是编辑 ~/.ssh/config 像这样:

以后只需要用 github-as-davinci 替换掉 github.com 即可,如:

Mac 下 OpenGL 开发环境搭配


Coder Life

本文介绍一下在 Mac 下用 Sublime Text 作为开发工具的环境搭配。

如果没有安装 Homebrew, 先安装 Homebrew

OpenGL 和 GLUT 是 macOS 自带了的。但通常并不足以满足我们的需求。可以先安装一些常用的库。

然后安装 Sublime Text, 直接从官网下载: https://www.sublimetext.com/3

然后添加一个新的 Build System, 拷贝以下内容进去。保存为 opengl.sublime-build

然后直接按 Command+B 就可以构建了。

这是项目中只包含一个 .cpp 源文件时快速方便的构建方法。适合用来学习和测试一些简单的程序,如果是包含多个 .cpp 文件的项目,可以用 make, autoconf, cmake, bakefile, bjam, scons 等各种构建系统。在 OpenGL 系列的后期会再写一篇博文来阐述。

Safari can’t open the page because the server unexpectedly dropped the connection.


How to fix

从最近重启了几次 iMac 后,昨天 Safari 照例跳出来几十个我打开的窗口之后,却有一大部分显示 “Safari can’t open the page because the server unexpectedly dropped the connection.”。因为昨天有事情在手,试了 dnscrypt 无果之后,发现 Chrome 可以正常浏览网页,就用 Chrome 把事情忙完了。

今天打开电脑准备听歌,发现 QQ音乐上也显示 “无网络连接”。但 Dropbox 和 Chrome 一直在正常工作,从 Terminal 中 ping 各种网址也能正常解析而且通畅。系统问题?准备上 App Store 看看有无系统更新,结果 App Store 也打不开,也提示“无网络连接”。

首先想到的是重置 SMC 和 NVRAM, 但仍然无果。

在 Network 下新建并切换到一个新的 Location 解决了。点击 Apply 的那一刻,各种网页全部显示出来了。

问题到此解决,但顺带也找到了原因,找到原 Location 的 Wi-Fi service, 在 Advanced Proxies 里面发现 SOCKS Proxy 居然是启用状态。而实际上并没有打开,也就是一个不存在的代理。所以默认会走系统代理的程序,都将出现“No Network”的错误,而没走系统代理的程序,都能正常工作。

出现这一点的原因,应该是启用 socks 代理的状态下关机,ShadowsocksX 却没有恢复设置。

OpenGL(一)六色旋转立方体


Coder Life

用 Mac 自带的 OpenGL 和 GLUT 框架

Contents

  1.  搭建好基本的 OpenGL 程序框架
    1. 设置好头文件目录、链接库文件(OpenGL, glut 等)
    2. 初始化,创建窗口
    3. 编写最基本的 Vertex Shader 和 Fragment Shader
    4. 编写读取文件的函数
    5. 编译、链接 Shader
  2. 绘制立方体
    1. 直接通过 glutSolidCube 绘制实心立方体
  3. 实现旋转
    1. glRotatef
    2. glutPostRedisplay 或 glutIdelFunc 来反复渲染
  4. 六个面的颜色
    1. 在 Vertex Shader 中获取法向量
    2. 传递到 Fragment Shader
    3. 通过法向量确定面
    4. 根据不同的面绘制不同的颜色

从以上文件中,你能学到:

  • glut 基本框架
  • C/C++ 读入文件内容
  • 创建 GLSL program
  • 重复调用 display 实现动画 (你也许还会在其它地方看到没有 glutPostRedisplay() 而在 glutDisplayFunc(display) 下有另一行 glutIdleFunc(display) )

这是老版本的 GLSL 语句,varing 传递变量,ftransform() 自动坐标转换。最基本的 vertex shader。下一节将更深入介绍。

这是老版本的 GLSL 语句,varing 接收传递过来的变量(法向量),通过法向量来判断平面,然后指定颜色。

预览

cube

解除网页的右键和选择限制


Coder Life

网页无法右键点击,无法选择复制怎么办?Javascript 禁用了复制怎么恢复?

进入到控制台,输入

如果是 IE 浏览器或不知道如何打开控制台,可以试着直接将以下命令复制到地址栏中然后回车(但有一些浏览器默认禁止地址栏中执行 Javascript)

Mac 上安装 Hadoop 运行 WordCount Example


Coder Life

直接用 Homebrew 安装

然后编辑 /usr/local/Cellar/x.x.x/libexec/etc/haddop-env.sh

(对应 Java 1.7 )

否则在 macOS 上会报 “Unable to load realm info from SCDynamicStore”

example 的 jar 文件在 /usr/local/Cellar/x.x.x/libexec/share/hadoop/mapreduce 下

进入目录之后

创建一个文件夹用于输入

把文本文件放入里面或者输入

运行

然后查看结果