将VIM的.swp转移到别处

用vim开发很爽,特别是和ZenCoding的结合,能让前端开发效率大增。

使用vim编辑文件的时候,vim会在文件的同目录下生成一个”.同名.swp”的文件,主要用于恢复崩溃文件。

但在多人协同开发的时候,通常会使用版本控制软件,svn、git、cc或其他,或者使用同步工具将文件实时同步的时候,这个文件多少会给人造成麻烦。

解决办法有二:

1. set directory=$YOURDIR,将swp转移到别的地方去

2. set noswapfile,让vim别产生那个文件

打开你的vip,在命令模式输入:e $MYVIMRC,随便找个地方添加以上一句即可。

Linux上甩开Apache安装SVN

最近捣腾了一个美国vps,把博客之类的都移民到国外去,由于平时常要在家里和公司来回切换,所以顺便用作平时同步的服务器。

虽然Google这个大好人提供了免费的SVN服务器,但是,他是全公开的,我个人除了代码外,可能还要同步些敏感信息。又想过付费买些SVN或GIT的服务,不靠谱的不敢买,靠谱的价格又贵,还不如自己买个VPS,放心多了,话不多说,开工。

这台VPS买了的时候是提供商给我装的干净的CentOS5.4,不过它太干净了,很多软件开发包都没有装上,杯具,但是本着“缺啥补啥”的原则,其实也不麻烦。

VPS上的WEB Server是nginx,简单,配置文件简洁,但功能很强大,所以我一直摒弃庞大笨重的Apache,既然不用Apache,自然也不想为了装SVN而去装个Apache,下面讲讲我装的过程,留个备份。

先下载最新的SVN源码包并解压:http://subversion.apache.org/

$bash# wget http://subversion.tigris.org/downloads/subversion-1.6.9.tar.gz
$bash# tar xzvf subversion-1.6.9.tar.gz
$bash# cd subversion-1.6.9

配置并检测编译环境:

$bash# ./configure --prefix=/usr/local/svn --with-ssl
configure: Configuring Subversion 1.6.9
configure: creating config.nice
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
...
checking for APR... no
configure: WARNING: APR not found
The Apache Portable Runtime (APR) library cannot be found.
Please install APR on this system and supply the appropriate
--with-apr option to 'configure'

or

get it with SVN and put it in a subdirectory of this source
...
Whichever of the above you do, you probably need to do
something similar for apr-util, either providing both
--with-apr and --with-apr-util to 'configure', or
getting both from SVN with:
...

一大堆checking之后,configure中断,提示无法找到APR和APR-util,原来SVN需要Apache的两个。其实我也不知道APR和APR-util是啥,于是网上Google之,翻来翻去找到了这个http://svn.haxx.se/dev/archive-2010-01/0545.shtml,一个名叫subversion-deps的东西,包含了离开apache安装SVN所依赖的东西,就在原来下载SVN源码的下方。这下好了,下到服务器,放在和svn源码同一级目录下,解压,然后再次执行configure,又报以下错误:

configure: checking sqlite library
amalgamation not found at /usr/local/src/subversion-1.6.9/sqlite-amalgamation/sqlite3.c
checking sqlite3.h usability... no
checking sqlite3.h presence... no
checking for sqlite3.h... no
checking sqlite library version (via pkg-config)... no

An appropriate version of sqlite could not be found.  We recommmend
3.6.13, but require at least 3.4.0.
Please either install a newer sqlite on this system

提示所需要的SQLite版本过低,前往它给出的URL下载并直接configure&&make&&make install,继续回到svn源码目录,configure之,期待着万事大吉。

configure: creating ./config.status
config.status: creating Makefile
config.status: creating sqlite3.pc
config.status: creating config.h
config.status: executing libtool commands

OK,检测完成,可以开始编译了,运行make命令;

tclsh ./tool/mksqlite3h.tcl . >sqlite3.h
/bin/sh: tclsh: command not found
make: *** [sqlite3.h] Error 127

编译终止,貌似缺少tcl,好嘛,继续本着“缺啥补啥”的原则,yum install tcl,再make,make install,一路下来终于没有报错了,这下可万事大吉了,首先得感谢国家让我接受长达9年得有偿义务教育,才能让我能看得到这么多单词。

价值的实现

这几天的氛围,让我感觉有点难受。首先是前端合并到技术部,磊哥那双红红的眼睛;再到一向温婉谦和的么么茶突然的激动,似乎将前端的价值体现推到了一个风口浪尖。

按照常有的理解,前端开发合并到技术部其实应该是对前端的认可,对前端应该是上升了一个高度,但为什么在我们脸上却完全看不到兴奋。每个人都在沉思,心绪复杂,尤其是磊哥,我可以明显看到他那双红红的眼睛,他说自己的心中有种难舍的UED情结。可惜,我不懂,我也不可能懂。在他心中,前端开发不只是CSS、JS,前端同时也应该是用户、交互甚至是视觉。在UED的大环境中,他可以可以参与设计,可以参与调研,也可以为用户体验而PK。我想,他可能是有点担心了,担心以后很难再这样,他担心前端实现自身价值的路是不是就更难了。

昨天的周会,说实话,我有点吓到了。我完全没有意识到,前端价值对于么么茶来说是多么重要的东西,可以因为一个口误或是有点偏激的建议而变得如此的激动。再一次让我们反思,什么是前端,什么是前端价值。“如果连辛辛苦苦积累起来的基础都丢掉了,那还做什么,那就真成了个切页面的了”,这让我突然想起,以前的我们被别人的定义也就是带有藐视的“页面仔”,但发展到现在不一样了,html、css、js、压缩、优化,没有人研究得比前端透彻。

每个人都在努力寻求着自己价值得体现。有梦想的人生是很美好的,当你翻过一个又一个的山头,看着广袤富庶的平原就在前面不远处的时候,你会非常的兴奋,即便那只是海市蜃楼,你也会忘掉身上的酸楚和路上的荆棘。

其实,我们并没什么不一样,都不过是一群追梦的人罢了。