2012年6月7日星期四

也如丧了些什么

因为与众多同胞一样的原因,我从 blogger 消失了很久
今天偶尔上来看看,发现与 G+ 的整合已经让 blogger 功能焕然一新
重新来写几个字

前几天看高晓松的书,《如丧
其实也没怎么认真看,文笔太犀利,措辞忒狠,不太适应
但这标题很引遐想
于是这些天来,一直觉得自己像是丧失了点什么东西,却又说不清楚的
反正我如丧的不是青春


2009年4月16日星期四

parrot 鹦鹉 1.0 release

鹦鹉,对于 perl 6 意义重大
相当于真正执行二进制代码的虚拟机
如今,鹦鹉已经 release 了
但是很讽刺地,它现在的发展似乎明显超越了 perl 6 的开发进展

不管怎么说,它的正式发布,还是要恭喜的

2009年4月14日星期二

perl 参数的 I 和 i

perl 参数的 i 和 I 都可以指定路径
其中 I 指定的是文件夹
i 指定的是 pm 文件

比如 /Test 文件夹下有 Teacher.pl 和 Boy.pm 两个文件

../
./
|-Test/
  |-Boy.pm
  |-Teacher.pl

其中 Teacher.pl 调用 Boy.pm 代码
代码如下:


#!/cygdrive/c/Perl/bin/perl 

package Test::Teacher;
use strict;
use warnings;

use Test::Boy;

my @eth = Test::Boy::getEverything();

foreach(@eth){
print "out: ".$_."\n";
}
#!/cygdrive/c/Perl/bin/perl 
package Test::Boy;
use strict;
use warnings;

my @everything = 1 .. 9;

sub getEverything{
@everything;
}
1 假设当前路径为 /cygdrive/e/pl可以使用
perl Test/Teacher.pl
注:perl 会从 ./ 下寻找 Test::Boy.pm,也就是相当于 -iTest::Boy 参数

2 假设当前路径为 /cygdrive/e/pl/Test 时
则需要使用
perl -I../ Teacher.pl
注:perl 会从 ../ 寻找 Test::Boy.pm
use Foo::Bar 意味着什么
   ——摘自 http://wiki.perlchina.org/Simple_module_tutorial

use Foo::Bar
并不意味着在 @INC 的目录中寻找一个叫做Foo::Bar.pm的模块文件。
它的意思是在@INC的目录中寻找一个叫做‘Foo’的“子目录”,
然后在其中找一个叫做“Bar.pm”的“模块”。
现在,如果我们成功"use"了一个模块,
那么我们就可以通过完整的包路径语法
&PACKAGE::FUNCTION
使用这个模块中的所有函数。
当我们说&Foo::Bar::some_func的时候,
我们指的是“包的名字”而不是那个在use中曾使用的包含路径的文件名。
这会允许你可以在一个use过的文件中包含很多包名字。
实际使用中这些名字通常是相同的。


另外,假设 Teacher.pl 在 Test 文件夹同级

../
./
|test/
| |-Boy.pm
|-Teacher.pl

如果要调用 Boy.pm,也要在 Boy.pm 开头的 package 生命中写清
Test::Boy
即:pm 一定要放在 pm 内与包路径相同的文件夹下,并在文件夹外层调用

vim 7.0 也有 tab 页

古人云:vi 是个好东西

vi 的 buffer 是个不太好看的东西——中文真是博大精深,我主要表达的是不容易看清楚的意思
:ls 是个很好用的命令,但不够直观
用户一定要 ls 一下才能看清楚 buffer 里的东西
这样的操作显然违背了 vi 的特色——让人体任何部位的移动尽量减少,哪怕一毫米

于是,vim 7.0 开始支持 tab(标签页)
gvim 下的 tab 更是直观
最简单常用的用法如下:

netrw 中
t 把光标指向的文件在新标签页中打开
通常模式下
:tabnew 打开一个新的标签页
:tabc[lose] 关闭当前的标签页
:tab help 在一个新标签页中打开帮助
:help :tab 在帮助中打开关于标签页内容
:tab help :tab 在新标签页中打开关于新标签页的帮助

其他的,按以上方法查帮助吧

zzzzZZZZ

zzzzZZZZ