关于网易云音乐个性推荐无法显示的问题


最近在使用网易云音乐时首页的个性推荐总是无法显示,一直在正在为你生成个性化推荐,网上也没找到什么办法,偶然间使用

┌─[jianglin]─[~]
└──╼ rm -rf .cache/netease-cloud-music/
┌─[jianglin]─[~]
└──╼ rm -rf .config/netease-cloud-music/

重新打开登陆后个性推荐就出现了,特此记录

方便的切换emacs主题


作为一个主题控,经常会切换主题,之前切换主题的方式是这样的,*M-x*,`load-theme`,选中,但是个人认为不够便捷,正好前几天发现了hydra这个插件,也想实践一下

获取主题列表

(setq maple-cycle-themes (mapcar 'symbol-name (custom-available-themes)))

获取当前主题索引

(cl-position (car (mapcar 'symbol-name custom-enabled-themes)) maple-cycle-themes :test 'equal)

获取下一个主题

(setq maple-current-theme-index
      (+ 1 maple-current-theme-index))
(setq maple-current-theme (nth maple-current-theme-index maple-cycle-themes))

加载主题

(load-theme (intern maple-current-theme) t)

最后得到这样的函数

(defun maple/cycle-theme (num)
  (interactive)
  (setq …

emacs笔记


Evil

粘贴替换的时候会复制替换的文本

(defun evil-paste-after-from-0 ()
  (interactive)
  (let ((evil-this-register ?0))
    (call-interactively 'evil-paste-after)))

(define-key evil-visual-state-map "p" 'evil-paste-after-from-0)

自动搜索已选中的字符

经常使用 evil 中的 =/= 进行搜索, 但有时候想要搜索已有的字符, 在 evil-visual-state 下选中某个字符,按 =/= 时自动把选中的字符填入待搜索项中

(use-package isearch …

emacs实现智能注释


之前使用emacs时遇到这么一个问题

当前行存在代码折叠时,如果想要注释,必须先选中当前行,否则只能注释代码折叠块的第一行

就像这样

基础注释函数来源于 stackoverflow

(defun comment-or-uncomment-region-or-line ()
  "Comments or uncomments the region or the current line if there's no active region."
  (interactive)
  (let (beg end)
    (if (region-active-p)
        (setq beg (region-beginning) end (region-end))
      (setq beg (line-beginning-position) end (line-end-position)))
    (comment-or-uncomment-region beg end)))

在此函数的位置上进行修改,刚开始使用

(when (hs-already-hidden-p)
    (evil-visual-line …

修改agetty启动参数自动登陆linux


环境: archlinux 参考

需求

想要Linux启动后默认以指定用户登陆,不用输入用户名,可以直接输入密码进入系统

实现

man agetty

修改以下文件

/sudo:root@localhost:/etc/systemd/system/getty.target.wants/getty@tty1.service

自动登陆系统(用户名密码都不用输)

ExecStart=-/sbin/agetty -a username --noclear %I $TERM

自动登陆系统(仅输入密码)

ExecStart=-/sbin/agetty --skip-login …

linux终端常用快捷键


  1. 移动光标快捷键
    ctrl+f	向前移动一个字符
    ctrl+b	向后移动一个字符
    alt+f	向前移动一个单词
    alt+b	向后移动一个单词
    ctrl+a	移动到当前行首
    ctrl+e	移动到当前行尾
    ctrl+l	清屏,并在屏幕最上面开始一个新行
    
  2. 编辑命令行快捷键
    ctrl+d	删除当前的字符
    ctrl+t	交换当前字符和前一个字符的位置
    alt+t	交换当前单词和前一个单词的位置
    alt+u	把当前单词变成大写
    alt+l	把当前单词变成小写
    alt+c	把当前单词变成首字母大写的单词
    ctrl+v	添加一个特殊字符,例如,要添加一个制表符,按ctrl …

升级至python3.6导致环境出错解决


Table of Contents

最近archlinux升级至了 python3.6 ,直接导致了我的开发环境失效,唉

archlinux 果然不适合开发

虽然后面都已经解决了

事故(一)

virtualenv不可用,原先使用python3.5创建的环境直接不能用了,只好删了原有了东西,重新使用python3.6创建

pip freeze > requestments.txt
pip install -r requestments.txt

事故(二)

py3status 报错

   Traceback (most recent call last):
  File "/usr/bin/py3status", line 11, in …

emacs预览图片时禁止smooth-scrolling


Table of Contents

需求

在使用 org-mode 写文档时,插入图片后默认不显示,想要直接在 org文件中预览图片,可以使用

org-toggle-inline-images

但是问题来了,开启预览模式后,移动光标跳过文件内容,找了一下

参考链接 1 那么问题来了,如何只在开启 org-toggle-inline-images 后关闭 smooth-scrooling, 关闭 org-toggle-inline-images 后开启 smooth-scrooling

解决

给出代码,使用 defadvice

(defadvice org-toggle-inline-images (after org-open-at-point activate)
  (if smooth-scrolling-mode (smooth-scrolling-mode -1)
        (smooth-scrolling-mode 1)))

Footnotes

1 …

tar打包排除目录


使用 --exclude + 需要排除的目录

示例:

tar zcvf hello.tar.gz --exclude="**/__pycache__" maple/ manager.py

注意 : --exclude 参数需要在要打包的文件或目录前,否则不起作用,另外排除的目录后不能加 */*

--exclude 同样用于 排除文件

tar zcvf hello.tar.gz --exclude="*.pyc" maple/ manager.py

virtualbox中使用U盘等usb设备


主系统:archlinux + virtualbox 5.0.24-1 虚拟机:windows

安装VirtualBox Extension Pack

下载

先从官网下载扩展包 https://www.virtualbox.org/wiki/Downloads

注意 :版本要一致

└──╼ pacman -Qi virtualbox
名字           : virtualbox
版本           : 5.0.24-1
描述           : Powerful x86 virtualization for enterprise as well …

emacs解决windowns文件乱码


最近在看windows文件时总是乱码,查了资料后才知道windowns下的编码为 gb2312 , 而linux下的编码为 utf-8 ,所以打开文件会乱码

如何解决?

换系统

这不是废话吗!

修改language环境

在配置文件中加入这么一行

(set-language-environment 'Chinese-GB)

重启就行,结果····打开 linux下的文件乱码

重新以gb2312的编码载入文件(推荐)

参考这里

M-x revert-buffer-with-coding-system

选择chinese-gb2312,确认载入(不需要重启)

ok,是不是很简单

linux下串口读写权限问题


方法很简单,将用户加入串口所对应的group,需要 注意 的是不同的系统对应的group可能不同

按照网上说的加入 dialout,

└──╼ sudo usermod -a -G  dialout username

结果提示 /dialout”组不存在/

查看对应的组

└──╼ ls -al /dev/ttyUSB0
crw-rw---- 1 root uucp 188, 0 6月  15 23:09 /dev/ttyUSB0
└──╼ sudo usermod -a -G  uucp username

ok,之后重启一下

archlinux更换默认内核为linux-lts


前几天更新内核到了 4.6.2 ,结果很不幸,电脑变得非常卡(貌似只有我遇到这个问题?), 实在是找不到解决办法了,于是将内核更改为 linux-lts

更改办法很简单,重装 linux-lts

$ sudo pacman -S linux-lts

重启之前,请确认安装了

img

(注:我的是双显卡,还需要安装 bbswitch-lts )

flask日志处理


使用文档上的一句话:

Applications fail, servers fail. Sooner or later you will see an exception in production. Even if your code is 100% correct, you will still see exceptions from time to time. Why? Because everything else involved will fail.

应用发生错误时发送邮件

这里文档上个人认为说的不清不楚,毕竟想要使用还要看logging的文档

原文档

ADMINS = ['yourname@example.com']
if …

解决evil-escape下visual-state不能使用'jj'的问题


在一个多月前我给 evil-escape 开发者提了一个issue,但是不幸的是,没人理我,人理我,理我,我·····

于是这一个多月来我使用visual-state下选择段落的方式是: 跳到段落最后,按k从下往上选择, 现如今都快成为习惯了,今天终于有人解决了我的问题,非常感谢 ZzAntares

之前我用

(setq evil-escape-excluded-major-modes '(dired-mode neotree-mode evil-visual-state))

解决了'jj'在 dired-mode neotree-mode 下的问题,但是遗憾的是 visual-state 下的选择问题仍然没有解决

现在终于解决了, issue

(setq evil-escape-inhibit-functions '(evil-visual-state-p))

ok ,就这样