使用NX替代VNC

NX 是 NoMachine 公司推出的下一代远程桌面技术,可以说是用来替换 VNC 的一个较好方案。

VNC is remote control software which allows you to view and fully interact with one computer desktop (the “VNC server”) using a simple program (the “VNC viewer”) on another computer desktop anywhere on the Internet.

VNC 是一个允许你从一台电脑(VNC 查看器)查看并且操作另外一台电脑(VNC 服务器)小程序 …

more ...

TypeError: sequence item 22: expected string or Unicode, long found

Mako 下面开发时候,遇到这个问题

TypeError: sequence item : expected string or Unicode, long found

Trace 的情况大概这样(我的错误信息无法再现,这是某位外国友人的错误信息)

File ‘/Users/amaslov/Projects/dou-pylons/doupy/doupy/controllers/ root.py’, line 239 in staticpage

return render(‘/pages/%s.html’ % name)

File ‘/Users/amaslov/Projects/dou-pylons/py/lib/python2.5/site- packages/Pylons-0.9.7-py2 …

more ...

简单输入提示框实现

早期的输入框提示是这样的(via baidu

tieba
tieba

左边一个 label ,右边一个输入框。

比较现代的方式是(via Discuz!

discuz!
discuz!

更漂亮的方式是(via 点点

diandian
diandian

登录提示信息是放在输入框里面,可以减少文字干扰,我也想在自己手头的小项目中实现这种效果。

我需要达到几个要求:

  1. 提示信息是可以暂存的,即用户的输入在清空之后,还能够显示原来的提示信息
  2. 只需为 text / textarea 添加一个 class 即可实现效果
  3. 不修改 DOM 节点,避免影响上下文选择器

为了实现效果,我需要将提示信息暂存到某个地方。有3个地方可供选择: js 全局变量、输入框自定义属性、上下文 DOM 节点。

js 全局变量比较难控制元素标识,并不是每个元素都可以精准的用 id 标记;输入框自定义属性会破坏语义;在上下文加入节点会破坏 DOM 树 …

more ...


go-pylons.py在Python2.7下错误解决

当使用 Python2.7 +go-pylons.py 创建 Pylons 运行环境的话,会报一下错误。

[alswl@arch-vm xingtong]$ python go-pylons.py myb_env
New python executable in myb_env/bin/python
Traceback (most recent call last):
  File "/home/alswl/work/xingtong/myb_env/lib/python2.7/site.py", line 67, in <module>
    import os
  File "/home/alswl/work/xingtong …
more ...

安装lrzsz

lrzsz 是一款 Linux 下面的文件传输工具。实现原理是通过 Xmodem / Ymodem / Zmodem 协议传输文件。lrzsz 可以在支持这三种协议的Shell界面的工具下工作,比如XShell。

lrzsz是一个古老的软件,最新版本0.12.20是在1998年更新的。

大部分linux发行版的安装工具都可以直接安装 lrzsz,比如apt-get / pacman,当然我们也可以下载安装包手动安装。这次由于我所在的服务器没有管理员权限,我就使用源码包安装。

$ mkdir /home/alswl/app
$ wget http://ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz
$ tar xzvf lrzsz-0.12.20.tar.gz
$ cd lrzsz-0.12.20
$ ./configure …
more ...

Html元素事件查看器Eventbug

Chrome的开发者工具里面有一个小功能:查看当前元素的Event,比如onclick/onblur等事件。

image
image

一直想在Firefox里面也找到类似的插件,今天正好看到这么一个好东西,叫做EventBug。

官方的介绍如下

Eventbug是一款能够列出所有绑定事件的Firebug扩展,它将这些事件按事件类型排列。

  • 需要Firebug1.5
  • 源码沿用Firebug的BSD风格协议
  • 请使用Firebug的Bug报告列表来提交问题
  • 请使用Firebug的新闻列表来提出问题

作者:John J. Barton, Jan Odvarko

测试发现在Firefox5下面没有问题。

image

这么一款插件在调试js或者对别人的页面做一些js hack特别有用,强烈推荐之。

more ...

urllib2.urlopen的中文URL问题

在url中使用中文其实是一个坏习惯,会带来一系列的转码问题, 我更喜欢英文译名或者id来标识某个uri。但是现实往往是残酷的, 特别是在我们调用别人服务时候,有时候被逼无奈使用中文URL。

Python中unicode转码一向是让人头疼的问题。数次碰壁之后,我也摸出了一些门道, 研读完Python字符串的encode与decode 之后,就自认为找到了万金油,谁知道这次又碰上这个老冤家。

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.6/urllib2.py", line 126, in urlopen
    return _opener.open(url, data, timeout)
  File "/usr/lib/python2.6/urllib2.py", line …
more ...

使用DDNS+SSH连通家庭/工作电脑

1. 背景

我目前有两台电脑,一台是家里使用的Linux笔记本(Dell 6400,4年), 一台是公司使用的Windows笔记本(IBM X201,1个月)。 我有时候需要在办公室连入家庭电脑,进行一些操作,比如同步,比如使用linux特定服务。

完成这项工作需要两个条件,ip互通+对应通讯协议。被连接的服务器需要一个公网地址, 而非局域网的192.x.x.x。可供选择的协议比较多,http/ftp/ssh等常规协议都可以使用。

什么是花生壳

花生壳动态域名是全球用户量最大的完全免费的动态域名解析软件。当您使用花生壳服务, 无论您在任何地点、任何时间、任何线路,均可通过固定的花生壳域名访问您的远程主机服务。

现在花生壳为千万的域名提供动态域名解析服务,并广泛应用于网站建设、视频监控、 遥感测绘、FTP、VPN、企业OA、ERP等应用领域。

ps:除了花生壳,还有很多DDNS服务可以供选择。由于TP-Link和D-Link都默认内置花生壳, 我这里用花生壳做范例。而我使用的DD- …

more ...

一个mako.vim

给Vim找了一个Mako的语法高亮,发现着色居然有问题。查看更新记录后发现作者Armin Ronacher只更新到08年9月份。之后Mako更新了一些少许细节,我修改了一下mako.vim,放在这里供下载。

其实我只改了57/58行,增加一个block语法。

点击这里下载:mako.vim

使用方法,放入vimfiles/syntax

相关链接:

原始mako.vim:http://www.vim.org/scripts/script.php?script_id=1858

另外一个mako.vim是缩进用的,放入vimfiles/syntax:http://www.vim.org/scripts/script.php?script_id=2663

ps:Mako是一个Python下面的Template框架。

pss:貌似服务器ip被认证了,讨厌~

more ...