Jon

Jon

Swift 3 NSCharacterEncodingDocumentAttribute 的一处坑

项目中有一个方法的作用是把 HTML 字符串解析成 AttributedString,升级到 Swift 3 后,下面这段代码会 crash。 var attributedString: NSAttributedString do { try attributedString = NSAttributedString( data: htmlString.data(using: String.Encoding.utf8)!, options: [ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType, NSCharacterEncodingDocumentAttribute: String.Encoding.utf8 ], documentAttributes: nil) } catch _ { attributedString = NSAttributedString() }

By Jon
本州见闻

travel

本州见闻

年前跟团(实在没有时间做自由行的攻略)去了一趟日本,趁着还有些许印象,写点零碎的见闻。 车让行人,不只是挂在嘴边。晚上在大阪市区散步,路过一个小巷子的路口时,一辆车正好从我们面前开过拐进巷子,应该是驾驶员没注意到我们在过马路,副驾驶上的女士发现我们停下脚步让车先过,一直不停地挥手哈腰道歉。 餐饮贵。一不小心就人均过百。 空气好,水好,极度干净。 城乡差距小。 上网用的是环球漫游随身 Wifi,15块1天,续租10块钱一天(这个定价很奇怪,我只租一天,然后一直续租,不是更便宜?) 大阪 亲身去了大阪,才更能理解大阪军团的故事。不过这些故事恐怕是中国人的意淫罢了,知乎上有更加客观独立的说法。 京都 奈良 箱根 泡温泉十分考验身体素质,泡个几分钟就得出来休息。 在冰冷冬天的室外,泡着热水,一抬头就看到星空,是一种无法形容的神奇感觉。 此处本应有照片,无奈泡温泉不能带手机。 东京 城市规划有迹可循,整体格局依然延续了明治维新时定下的框架。反观国内的大拆大建,让人痛心。 晚上来到东京铁塔欣赏东京城市夜景,十分壮观。

By Jon

iOS

UIImage Rendering Mode

最近调第三方代码的过程中发现,有一个 UIImage,无论将图片替换成什么,在页面上始终显示成蓝色。经过代码阅读,终于发现了猫腻: [image imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate]; 简化版代码: theImageView.image = [theImageView.image imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate]; [theImageView setTintColor:[UIColor redColor]]; theImageView.image = [theImageView.image imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate]; [theImageView setTintColor:[UIColor redColor]]; WatchKit 中的使用 In WatchKit for Apple Watch apps

By Jon

Tomcat PermGen outOfMemory 问题排查

JVM 堆内存的组成部分 * 堆内存 = 年轻代 + 年老代 + 永久代 * 年轻代 = Eden区 + 两个Survivor区(From和To) 用 jstat 命令查看 JVM 资源占用情况 命令语法 jstat [ generalOption | outputOptions vmid [interval[s|ms] [count]] ] jstat 命令实例 用 jps 命令查询 jvm 进程端口号 jps -J-Djava.io.tmpdir=/home/yrfz/apache-tomcat-7.0.39/temp/ 用 jstat 命令查看内存占用 jstat -J-Djava.io.tmpdir=/home/yrfz/

By Jon

Nginx

安装 Ghost 并配置 Nginx 反向代理(Cent OS 7)

本文要解决的问题:在服务器上安装 Ghost 博客软件,并通过 Web Server 设置反向代理的方式进行发布,涉及的系统环境和工具有: * CentOS 7.1 * Ghost 0.7 * Nginx 1 安装 1.1安装 Nginx 更新 CentOS 软件,安装开发工具包、Vim 和 wget: yum update -y yum groupinstall -y "Development Tools" yum install -y vim wget 首先我们安装Nginx启动HTTP服务器,安装成功后输入你的网站IP就可以看到“Welcome to Nginx!”。 编辑Nginx的仓储地址。输入:

By Jon

Git

从 Githug 里学到的技巧

趁等联调的间隙刷了刷 Githug,学到了几招。 第19关 git commit --amend 追加提交,并修改 commit message。 第21关 使用 reset 将文件移出 staging area git reset HEAD to_commit_second.rd 第22关 放弃最近一次提交,同时保留改动到 staging area git reset --soft HEAD^1 第24关 查看 remote 地址 git remote -v 第27关 添加远程 repo ???这个操作的作用是? git remote add origin https:

By Jon

美剧

The Newsroom

刚看完 The Newsroom 这部剧的大结局。 一直觉得这是一部肥皂属性偏重的剧。直到看完这最后几十分钟,才明白这部剧要讲的故事,是这个老人如何带领着一群年轻人追随理想。 编剧借车库里的临时乐队唱起 That's How I Got to Memphis 这样的场面,将一直暗含在之前剧情中的主题明确地展现在观众面前:这样一群人,放下过往,不顾彼此的纠葛(就是开头说的肥皂属性),凝聚成一支顽强的队伍,靠的正是引领他们的共同理想。 或许每个人都渴望置身于这样的团队中吧。 然而美剧归美剧,现实归现实,类似剧中的团队或许并不存在,Charlie 的死亡似乎也在诉说其中的艰难,但有其他人在,理想终归会得到传承。 2017-10-02 update:刚看了《娱乐至死》。这部剧正好说明了,在新闻节目里“好好说话”有多难。

By Jon