升级至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 <module>
    load_entry_point('py3status==3.3', 'console_scripts', 'py3status')()
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py …

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 https://github.com/syl20bnr/spacemacs/issues/3824

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 as home use
架构           : x86_64

所以下载 5.0 版本的pack

安装

参考 https://wiki.archlinux.org/index …

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 )