Ask and Learn

我又开始写日记了

五月底读了一位朋友的日记汇总的公众号文章,感慨良多,我以前也算是很爱写日记的人了,用的最久的日记应用,应该算是电子邮件了,但是因为媳妇有时候有看我日记的兴趣,导致写日记变成了一种写作,没有办法很好的记录自己真实的心情了。所以停了很久。最近写日记的冲动又被点燃了,所以决定重新开始写日记。 我的日记记录的东西比较杂,真的就是日记该有的样子。工作上有不顺心了了,会吐槽,有进步了,会给自己庆贺。和媳妇有矛盾了,不想和她吵架 就碎碎念几句。和女儿有什么新故事发生,会激动的记录下来。总的来说,是一个宣泄的窗...

如何关闭 VS Code Terminal 的 Tabs 模式

我在使用 VS Code 时,手欠点击了 Terminal Dropdown 里面的这个 Show Tabs 选项。 结果,Terminals 就变成了标签页的方式,挺占地方的,还不好用,想要切换回去,但是界面上看不到退出的按钮。 摸索了好一阵子,终于找到了关闭的方法。

Chrome 扩展推荐 - Button for Google Calendar™

今天介绍一款 Google Calendar 的 Chrome 扩展,相信使用 Google Calendar 管理自己日常事务的人,不过 Google Calendar 的 Web 通知功能很不稳定 我不太喜欢使用各种臃肿的 Calendar 客户端, 所以在 Web Store 里面淘到了一款 Chrome 扩展,用于提供提醒功能和显示最近的事件。它除了能够显示最近的事件列表外,还会在扩展图标上面显示出下一个事件的时间,非常贴心。 因为是使用扩展检查并推送通知,通知功能也更加稳定 安装地址:...

自动适配中英文的语音合成,再次推荐讯飞有声

我之前写过一篇推荐讯飞有声的文章,最近,这个应用有了些更新,我准备再推荐一遍。 之前在使用这种语音合成的应用时,我一直有一个苦恼,就是没有能够比较好的适配中英文的语音引擎,所以我一度是这样用的:中文文章推到讯飞有声,使用中文合成引擎。英文文章推到 Pocket,选用英文合成引擎。这样中英文的文章就都能兼顾了。但是区分推送到两个服务,操作起来挺麻烦的。听个文章,使用习惯跳动很大。而且遇到中文夹杂英文的文章,就立马歇菜了。讯飞有声虽然也自带英语音源,但是每次听文章切来切去,也很麻烦。 最近我看到讯飞...

你好鸭 #16 | 我是邱建,电鸭最早的核心共建者,远程八年,体验如下:

前段时间接受了电鸭社区的访谈,以下为访谈原文 嗨 你好鸭 我是邱建 ▌介绍下你本人的经历及当前所做的事情吧? 我是一个在西安这个节奏很慢的城市远程工作的 ruby 程序员,喜欢双马尾,动漫和游戏的肥宅。 自我毕业后一直从事软件开发的工作,待过面向企业开发的公司,外包公司,也待过很酷的创业公司。随着年龄的增长,对开发的热情却从未停歇,虽然所学很杂,到也不是那种不思考的类型,时常学习,给自己充电。 目前我为一家新加坡酒店行业的公司远程工作,从事后端开发,以及打一些杂。此外,业余时间。我还是电鸭社区...

使用 Sprockets Processor 剔除 CSS 中的 Google Font

使用 Rails 做 Web 应用时,基本上都会遇到使用第三方前端组件的情况,相比于自己手动 Copy 组件的文件到 Assets 中,使用一些别人封装好的 Gem,或者借助 bower-rails 等工具,可以更省心的管理这些依赖文件。 一些组件的 CSS 中可能通过一些 CDN @import 引入一些依赖,比如 Google Fonts。这对开发者来说,本来是件极便利的事,但因为一些众所周知的原因,一些通过 URL 引入的样式文件无法访问或者访问很慢,而样式一般是在网页头部引入,这导致整个...

解决 rails 的 data-remote 链接生效前用户误触的问题

jquery_ujs 对 rails 来说,是一个非常重要的组件,它包含在 rails 的默认组件之中。 jquery ujs 包含一些非常便捷的功能,比如确认对话框、触发 ajax、自动禁用表单提交按钮等,本文主要讨论的是触发 ajax 的功能。 通过添加简单的标签属性,jquery ujs 可以把一个普通的链接或者表单转换成 ajax 提交,而不需要写 JavaScript 代码。 上面的代码会生成如下的代码 当用户点击后,它会触发一个指向地址 /projects/1/close,metho...

同步 Chrome 扩展的用户偏好

我在之前介绍过一些 Chrome 扩展的特性,而 Storage 就是其中之一, Storage 允许将一些数据同步到用户的 Google 帐户中,这是一个非常棒的特性, 即使它的存储容量非常有限。 Storage 一个非常典型的应用场景就是保存用户偏好,如果我们开发的应用定制性很强, 有了 Storage 这个利器,用户更换了机器,就不需要再重新定制一次了,真是太方便了。 那么如何使用 Storage 来同步用户的偏好数据呢?本文就以 TransIt 为例,抛砖引玉。 需要实现的效果 扩展中...

用 Python 批量创建云梯 VPN 连接配置

缘起 大家都知道,最近的网络不怎么和谐,速度慢不说,VPN 还总断,好在云梯 提供了挺多的服务器可以切换, 但云梯的服务器又挺多,Linux 的 Network Manager 又不支持批量添加配置,甚至配置文件都不能复制新建, 每个服务器的配置都得手动加,非常麻烦。 当然,也可以每次切换时打开配置,光改地址,但是这也非常不方便。 作为一个合格的开发人员,当然会想到用程序批量生成配置,我选择使用 Python。 寻找配置文件的位置 要批量创建配置,首先得知道配置文件在哪里,比如自己的云梯 VPN...

在 XFCE 中使用截图工具

在 Ubuntu 中,我一直以来都是使用的 Shutter 作为主要的截图工具,它拥有超级多的截图方案, 还内置了非常棒的图片编辑工具,可以方便的添加标注。但公司的机器比较垃圾,我甚至从 GNOME 换到了 XFCE,所以尽量去挑选一些比较精致的工具来使用,而且我对 Shutter 大部分的功能也用不上, 于是卸载了 Shutter,准备换成 XFCE 的截图工具。 在安装 XFCE 截图之前,先卸载掉 Shutter 和 GNOME 自带的截图工具 然后顺手安装 XFCE 截图工具 XFCE ...

没有内容