分类: ‘小小工具’ 的所有文章

Narrow This Page! – bookmarklet to narrow down webpage for wide screen

2012年04月6号,星期五 作者:半瓶墨水   链接:http://www.2maomao.com/blog/narrow-this-page/

New version: Narrow it!
Description: set background to green to protect eyes! Drag it to your bookmark bar and enjoy!

—-

Got a big and wide screen, found hard to read as the line goes very long on the webpage, so I wrote the following bookmarklet, hope it helps you as well:

Drag this bookmarklet to your bookmark bar: Narrow This Webpage, click it when you done open the wide webpage, enjoy!

Source Code: you can modify it to other widths if you don’t like 1080px.

javascript:(function(){var%20S=document.body.style;S.minWidth=S.maxWidth=S.width='1080px';S.marginLeft=S.marginRight='auto';})();

tagwin – windows命令行利器 – 利用标签在文件夹中快速跳转

2011年02月26号,星期六 作者:半瓶墨水   链接:http://www.2maomao.com/blog/win32-folder-tagging-scripts/

Update @ Tuesday, March 1, 2011, 18:26:54: Fix 一些小问题,最新版是1.1

前两天看到了Dreamers’s blog:Bash 小技巧:给目录加上书签,快速切换目录(bashmarks),感觉用批处理脚本实现应该不难

套用Dreamer的一段话(略改):

当我们在命令行下面做开发的时候,很大一部分时间都浪费在了目录切换上面,相信不少人每天敲 “cd” 都敲得想吐。如果目录层次多一点,Tab 键也会饱受摧残。虽然Windows命令行有内置的 “cd -”, “pushd” 和 “popd” 命令,但用起来都不是很顺手。

如果能用几行简单的 Batch 脚本巧妙地给目录加上了书签,这样你就可以给最常用的那几个工作目录加上书签,不需要每次都敲 cd 了。还可以在各个常用的文件夹之间来回快速切换。

当天晚上回来就实现了第一版,感觉很是不错,由于一直没有时间写博,留到今天才拿出来跟大家分享

使用方法

1. 点击此处下载: http://www.2maomao.com/blog/wp-content/uploads/tagwin-dglt-11.zip
 (或者尝试 这个链接

2. 解压所有文件到系统PATH包含的任意目录下

3. 打开命令行,进入要加标签的目录
  t abc —> 给当前目录加标签为abc
  g abc —> 切换到标签为abc的目录
  d abc —> 删除标签abc
  l ———–> 列出所有标签

在你解压缩的那个目录找到dglt.list文件,里面是所有的标签,也可以通过编辑这个文件来管理

另外在Google Code建了一个项目用来保存最新的代码,有兴趣的可以去看看代码:
http://code.google.com/p/tagwin-dglt/

使用演示:

D:\projects>t proj

 proj   D:\projects

D:\projects>cd py\django\fayaa

D:\projects\py\django\fayaa>t fayaa

 fayaa  D:\projects\py\django\fayaa

D:\projects\py\django\fayaa>pushd g:\relax\movie

G:\relax\movie>t movie

 movie  G:\relax\movie

G:\relax\movie>g proj

D:\projects>g fayaa

D:\projects\py\django\fayaa>g movie

G:\relax\movie>l

Tagged Folders
--------------
proj    D:\projects
fayaa   D:\projects\py\django\fayaa
movie   G:\relax\movie

众里寻它千百度 – Windows XP时间栏自定义工具Tclock

2010年02月22号,星期一 作者:半瓶墨水   链接:http://www.2maomao.com/blog/tclock-windows-xp-clock-customize/

今天无意间看到Tclock2,爱死了

WindowsXP原有的时间显示有些呆板,特别是我用了双层的任务栏以后,原有的时间显示内容还是那么些,有时候我需要知道今天是哪天,还需要鼠标停留在上面一会儿,还有的时候,可能是bug,我在每台用过的WindowsXP上都遇到过:鼠标停留再久都不显示那个日期提示框

Tclock2可以:

1. 自定义WindowsXP右下角的那个时间显示框,格式,字体
 (可惜没有背景色,虽然可以用自定义图片做皮肤,但是没那工夫)
2. 一键复制时间日期到剪贴板,我现在用的是鼠标左键单击的方式复制,很爽
3. 我设置了开机自动启动

不多说了,放个截图如下

tclock

另外,鉴于原官方站挂掉(上面的链接是unofficial的),以及方便自己下载,我把我的定制版压成一个zip包

下载地址:
http://www.2maomao.com/blog/wp-content/uploads/tclock21.zip

另外,如果你想用跟我一样的配置,又担心从这里下载的有问题,可以:
1. 到这里下载
2. 然后在Tclock2.exe所在目录下,建立一个Tclock2.ini的文件
3. Tclock2.ini的内容参见这里:http://fayaa.com/code/view/9493/

Python语言: head.py 输出文件开头的8个字节的二进制表示

2009年09月9号,星期三 作者:半瓶墨水   链接:http://www.2maomao.com/blog/output-header-of-file-in-python/

最近在写一个在线favicon编辑器,其ico格式很让人不爽,写了个工具生成ico格式的文件
为了手动检查生成结果,写了这个脚本检查其文件头内容:

Python语言: head.py 输出文件开头的8个字节的二进制表示
#! /usr/bin/env python
# -*- coding: utf-8 -*-
#
# Recently I start to write an ico file maker
#   this script helps on analyze the file header
#
# Usage:
#   head xxx.ico    – output 16 bytes
#   head xxx.ico 32 – output 32 bytes
#
import sys
f = open(sys.argv[1], "rb")
L = 16
if len(sys.argv) >= 3:
  L = int(sys.argv[2])
bytes = f.read(L)
for i in range(0, len(bytes), 8):
  print bytes[i:i+8]

xbytes = ["%02x" % ord(b) for b in bytes]
print
for i in range(0, len(bytes), 8):
  print "x " + " ".join(xbytes[i:i+8])

def to_bits(b):
  bs = []
  while b:
    bs.append(b&1)
    b>>=1
  bs = map(str, bs)
  bs.reverse()
  return "".join(bs).zfill(8)

bits = [to_bits(ord(b)) for b in bytes]
print
for i in range(0, len(bytes), 8):
  print "b " + " ".join(bits[i:i+8])

Windows命令行下来回切换代理的小脚本 – 主要为了Google Chrome

2009年08月13号,星期四 作者:半瓶墨水   链接:http://www.2maomao.com/blog/win-script-for-chrome-proxy/
Python语言: Windows下来回切换代理的小脚本 – 主要为了Google Chrome
#! /usr/bin/env python
# -*- coding: utf-8 -*-

#
# 一个来回切换代理服务器的小脚本
#   用Chrome,切换代理不方便,–proxy-server好像也不顶用
#
# 使用方法:
#   proxytoggle 127.0.0.1:8118
#   执行一次开启,再执行就关闭,再执行又开启,循环往复
#
# 有自己主机的,可以用Tohr Proxy:
#   http://blog.solrex.cn/articles/tohr-the-onion-http-router.html
#
import struct
import _winreg
import sys

root = _winreg.HKEY_CURRENT_USER
proxy_path = r"Software\Microsoft\Windows\CurrentVersion\Internet Settings"
kv_Enable = [
  (proxy_path, "ProxyEnable", 1, _winreg.REG_DWORD),
  (proxy_path, "ProxyServer", sys.argv[1], _winreg.REG_SZ),
]

kv_Disable = [
  (proxy_path, "ProxyEnable", 0, _winreg.REG_DWORD),
  (proxy_path, "ProxyServer", sys.argv[1], _winreg.REG_SZ),
]

hKey = _winreg.OpenKey(_winreg.HKEY_CURRENT_USER, proxy_path)
value, type = _winreg.QueryValueEx(hKey, "ProxyEnable")
kv = kv_Enable
if value:
    kv = kv_Disable

for keypath, value_name, value, value_type in kv:
    print "Creating", keypath
    hKey = _winreg.CreateKey (root, keypath)
    _winreg.SetValueEx (hKey, value_name, 0, value_type, value)