分割字符串
local ngx_find = ngx.re.find local function split(str, sep , count) local t = {} count = count or -1 local nfield, nstart = 1, 1 local nfirst,nlast = string.find(str, sep...
local ngx_find = ngx.re.find local function split(str, sep , count) local t = {} count = count or -1 local nfield, nstart = 1, 1 local nfirst,nlast = string.find(str, sep...
前面已经说过,可以使用auto-insert自动添加文件头,今天来说一说自动更新文件头,比如说每次保存时自动更新last updated字段
如果使用的是header2,直接设置相关的变量就可,假如使用的是auto-insert,同样也可以使用emacs内置的time-stamp对Last Updated进行自动更新
time-stamp默认使用Time-stamp:
,如果要对Last Updated
进行自动更新,只需要简单的设置
(setq time-stamp-active t...
想要在emacs中添加文件头有好几种方法:
直接手打
使用模板yasnippet
使用header2
使用内置的package auto-insert
header2可能是最方便的一种自动添加文件头的方式,但我之前使用过,想要自定义自己想要的内容很难,而且白白浪费header2的功能
今天主要说一说emacs内置里auto-insert,使用它在创建文件时自动添加文件头信息
直接(auto-insert-mode)
并且设置
(setq auto-insert-query nil) ;; 不提醒
(setq auto-insert-alist '(((python-mode . "...
我为什么放弃ivy回到了helm
说一说ivy用的不爽的地方吧
counsel-find-file作为最常用的命令,ivy竟然没有把默认的find-file进行覆写,比如我在dired中想要复制文件,我习惯使用C-h
退回上一个目录,但即使我之前已经设置了
:map counsel-find-file-map ("C-h" . counsel-up-directory)
但只有在使用counsel-find-file
时有效,类似dired中是无效的,相比较于helm...
背景 不知道从何时开始,就听过这样一个说法: 如果人类所达到的速度超越光速,那么人类将穿越时空。前些年网文电视剧可谓穿越盛行,今天我也来胡言乱语一番!
胡言乱语 光从某一点x出发,在其经过的路径范围内,有一不同于光所在空间y的空间z,z的时间流速与y空间的时间流速不一样,或者说z空间的时间流速小于于y空间的流速,即z空间一天,y空间一年。
由此就可发现,当y空间内的光从x点出发,在经过z空间范围内时,由于在z,y空间时间流速不一致,原本到达k点 (x到k的距离大于x到z空间的距离)所花费的时间为1s,但z空间的存在,需要花费0.3s才能通过z空间的范围,现在只需要远小于0.3s...
LANG="en_US.UTF-8" git branch 2> /dev/null
feh只支持静态文件,可用
animate output.gif
supervisorctl reread supervisorctl update
zip -r -x=.git/* -x=*.pyc...
今天真是不错的一天
今天出门,在电梯遇到一人,“小伙子,你有二十了吧”,“我今年二十X了”,“我看你不到二十的样子”,“我以为我看起来挺老的”,“怎么会。。。”
以前只是在电视新闻上看到有人直接撞到玻璃门上,其实真不怪他们,有时候玻璃门真看起来没有一样。我今天就这样直接撞上去了,说实话,还真疼
附几张今天用手机拍的照片,昨天用相机拍的raw格式暂时打不开/捂脸
参考 这里
class TailRecurseException(BaseException): def __init__(self, args, kwargs): self.args = args self.kwargs = kwargs def tail_call_optimized(g): """ This function decorates a function with tail call optimization. It...
import tornado from tornado.web import Application from tornado.web import RequestHandler from tornado.websocket import WebSocketHandler import os import json template = '''<!doctype html> <html lang="en"...
我有这样一个想法
有这么一个app
它可以自定义表单,然后保存到本地或者远程数据库
还可以填写一个远程url,验证的token,或者其他验证需要的header信息
填好之后就可以提交相关的表单
好吧,其实是写说说,写博客使用的
它还有另外一个功能: 上传图片
同样是先填写远程url,验证信息
填写其它相关信息
选择本地图片进行上传
上传成功后返回相应的url链接
好吧,越来越像朋友圈和QQ空间了
但是,它可以自定义发布和上传的url呀!
最后,如果要更大,更远一些,可以对使用者的博客等内容进行相应的聚合,分类,成为一个优质的移动聚合平台.
嗯,好想法,就等谁实现了
功能实现很简单, pelican也有类似的插件实现 https://github.com/getpelican/pelican-plugins/tree/master/neighbors
不过自己实现起来更爽不是吗? 而且类似prev_article_in_category和prev_article_in_subcategory的功能我并不需要
首先参考pelican的文档,基础实现
def add_neighbors(generator): .... def register(): signals.article...
date --help
%% | 一个文字的 % |
%a | 当前locale 的星期名缩写(例如: 日,代表星期日) |
%A | 当前locale 的星期名全称 (如:星期日) |
%b | 当前locale 的月名缩写 (如:一,代表一月) |
%B | 当前locale 的月名全称 (如:一月) |
%c | 当前locale 的日期和时间 (如:2005年3月3日 星期四 23:05:25) |
%C | 世纪... |
s = { 1, 2, 3, 4, 5, 6 } print(#s) -- output: 6 s[4] = nil print(#s) -- output: 6 s[7] = nil print(#s) -- output: 3 s[4] = 4 print(#s) -- output: 6...
ansible是基于Python的 自动化部署 方案,但是目前只是通过命令行
ansible -i hosts all -a 'uptime' # or ansible-playbook -i hosts playbook.yml -e 'args' -t deploy
实现自动化部署.
长此以往,虽然可以实现所谓的自动化,但产品业务线多且杂的情况下,项目很难维护,更不用说以文件为存储的表现形式很差,针对目前使用ansible的经验以及使用中的困难,可以针对性的提出一些解决方案
自动化部署其中最大的障碍就是...
之前有一个需求,ansible-playbook中需要某一步单步执行,也就是说在有多台服务器时,某个任务只能一台服务器执行完后,另一台服务器才能执行,否者对应集群的服务会出问题
这是一个很简单的需求,ansible中也有对应的实现, --fork 1
或者 使用 serial
但是如果有人忘记加 --fork 1
了呢,而且该任务是在子任务中,使用 include 加载, serial
关键字无法在某一特定任务中使用,只能与 hosts 同级
所幸,在这里 https://www.bountysource.com/issues/26342862-support...
Redis 集群是一个提供在多个Redis间节点间共享数据的程序集
集群开始需要运行redis集群实例,而且要让集群正常运作至少需要三个主节点,这里创建六个节点,三个为主节点,三个为从节点,端口号分别为9001,9002,9003,9004,9005,9006
并创建六个以端口号为名字的目录, 在每个目录中运行一个Redis实例
mkdir -p redis/9001 cd redis mkdir 9002 mkdir 9003 mkdir 9004 mkdir 9005 mkdir 9006
然后将对应的配置...
tornado中默认没有session的实现,虽然默认的 set_secure_cookie 已经足够安全了,但更安全的应该是客户端保存session_id,服务端保存对应的信息
注:保存在redis中的经测试是可以的,保存在内存中的貌似还不行
给出源码:
from uuid import uuid4 from redis import StrictRedis from functools import wraps from datetime import datetime, timedelta from pytz import timezone def singleton...