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 = ['[email protected]']
if not app.debug:
    import logging
    from logging.handlers import SMTPHandler
    mail_handler = SMTPHandler('127.0.0.1' …

解决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 ,就这样

flask中生成atom


参考资料1 参考资料2

下面是具体代码
# from urlparse import urljoin #python2
from urllib.parse import urljoin
from flask import request
from werkzeug.contrib.atom import AtomFeed


def make_external(url):
    return urljoin(request.url_root, url)


@site.route('/atom.xml')
def feed():
    feed = AtomFeed('Recent Articles',
                    feed_url=request.url,
                    url=request.url_root,
                    subtitle='I like solitude, yearning for freedom')
    articles = Articles.query.limit(15).all()
    for article in articles …

archlinux安装steam


最近想要玩会儿游戏,但是又不想切换到windows,所以准备安装steam,在linux下玩游戏, 参考文档Steam

准备工作

因为我的是64位操作系统,所以需要启用 multilib

$ sudo vim /etc/pacman.conf
# 取消下面注释
[multilib]
Include = /etc/pacman.d/mirrorlist

双显卡bumblebee

我的又是双显卡,需要安装32位驱动

lib32-nvidia-utils
lib32-mesa-libgl
lib32-mesa

注意 除此之外,参考 bumblebee报错信息 还需要安装 virtualgl-libs:i386 ( arch上是lib32-virtualgl ) 否则报错

ERROR: ld.so: object 'libdlfaker.so' from LD_PRELOAD cannot be preloaded: ignored.

安装steam

$ sudo pacman -Syu steam

打开steam

直接启动报错

$ steam
/home/jianglin/.local/share/Steam/steam.sh …

flask实现分页


数据库实现分页

offset

使用offset可以实现数据库分页功能

questions = Questions.query.offset(num) # 从num开始

limit

使用limit实现限制每页的文章数量

questions = Questions.query.offset(num).limit(6) #每页显示6篇文章

前端实现分页

需求设计

是使用上一页,下一页,用表单进行跳转,还是使用数字显示

获得文章数量 pages,和当前页码 number

简单的上一页,下一页

因为我的设计不是这个,所以简单说一下

下一页,上一页

jinja2 代码

<a href="{{ url_for('blog.index',number=number + 1)}}">下一页</a>
<a href="{{ url_for('blog.index',number=number - 1)}}">下一页</a>

首页没有上一页,尾页没有下一页

{% if number == pages %}
no next …