Skip to main content

Posts

Showing posts from September, 2007

mldonkey+sancho试用

参考 http://forum.ubuntu.org.cn/about42337.html http://www.haijd.net/doc/read-29.html http://sparkplugcn.wordpress.com/2007/08/15/%e4%bb%8eemule%e5%88%b0mldonkey/ 很多地方说mldonkey比amule如何如何好,而我觉得 amule本身就挺好,下完了最近几个文件后想尝试一下mldonkey 首先我是想编译一个不带 gui的 mlnet, 按照它代码里的readme, 只需简单地./configure然后make就行了,但是我这里却说需要 ocaml (readme里似乎是说只有 gui版本才需要),一开始让它自动下载编译ocaml, 但很慢,于是放弃,改用二进制包。 之后是前端,推荐的是sancho, 我下了个gtk版本的。 再之后按着帖子里的大概弄弄,配置些关于网络的东西,然后再用mldonkey release里带的插件把firefox和mldonkey关联上,需要强调的几点是 1.导入文件似乎只能下载后再本地导入 2.以下命令可以用sachon的console输入,好像也可以用telnet连接mlnet输入 2.用servers命令导入服务器,推荐下载http://www.emule.org.cn/server.met 3.用ov_load命令导入overnet的node列表,推荐下载http://download.overnet.org/contact.dat 4.用kad_load命令导入kad的node列表,推荐下载http://www.emule-inside.net/nodes.dat,也可使用eMule的nodes.data 5.注意把kad和overnet的选项打开,我一开始就忘了。。 6.注意修改最大下载限速,默认是50,太小了 感觉上如果设好了确实挺快,但也没有传说中的那么快,当然可能跟我这里网络环境有关。但是它可以连接多个服务器确实是个创新的想法

firefox 中 设置 ed2k与amule的关联

参考: http://forum.ubuntu.org.cn/weblog.php?w=646&previous=10 安装 amule-utils包 然后在firefox中利用about:config添加如下两项 新建一个Boolean,名字为network.protocol-handler.external.ed2k,值为true 新建一个String,名字为network.protocol-handler.app.ed2k,值为/usr/bin/ed2k

[转] Python的转码

字符串内码的转换,是开发中经常遇到的问题。 在Java中,我们可以先对某个String调用getByte(),由结果生成新String的办法来转码,也可以 用NIO包里面的Charset来实现 。 在Python中,可以对String调用decode和encode方法来实现转码。 比如,若要将某个String对象s从gbk内码转换为UTF-8,可以如下操作 s.decode('gbk').encode('utf-8') 可是,在实际开发中,我发现,这种办法经常会出现异常: UnicodeDecodeError: 'gbk' codec can't decode bytes in position 30664-30665: illegal multibyte sequence 这 是因为遇到了非法字符——尤其是在某些用C/C++编写的程序中,全角空格往往有多种不同的实现方式,比如\xa3\xa0,或者\xa4\x57,这些 字符,看起来都是全角空格,但它们并不是“合法”的全角空格(真正的全角空格是\xa1\xa1),因此在转码的过程中出现了异常。 这样的问题很让人头疼,因为只要字符串中出现了一个非法字符,整个字符串——有时候,就是整篇文章——就都无法转码。 幸运的是,tiny找到了完美的解决办法(我因此被批评看文档不仔细,汗啊……) s.decode('gbk', 'ignore').encode('utf-8') 因为decode的函数原型是decode([encoding], [errors='strict']),可以用第二个参数控制错误处理的策略,默认的参数就是strict,代表遇到非法字符时抛出异常; 如果设置为ignore,则会忽略非法字符; 如果设置为replace,则会用?取代非法字符; 如果设置为xmlcharrefreplace,则使用XML的字符引用。

Amarok 不出声音

今天尝试Amarok,是以前非常喜欢的播放器。 但是就是不出声音, 还弹出一个No MP3 Support为标题的对话框。 确定插件安装全后,开始研究它的选项, 最后发现是在Settings--Configure Amarok--Engine--Configure xine Engine--Output plugin处为Autodetect,怀疑是此处问题。 改成alsa后问题解决。

wine 程序菜单乱码的解决

我原来的locale 除了LC_CTYPE是zh_CN.UTF-8外,其余均为en_US.UTF-8, 但是这时wine的程序的菜单中文都不能正常显示,而程序内部有些中文则能够正常显示 解决方法是设置LC_ALL为zh_CN.UTF-8, 当然可能只改几个就行,但是没有进一步尝试。

Windows XP 设置 NTFS 文件权限

一般来说直接点右键, 有个“安全”标签,就是了, 如果说不能改, 那么应该点“高级”, 然后去掉“从父项继承那些可以应用到子对象的权限项目, 包括那些在此明确定义的项目” 如果连“安全“标签”都没有,那么应该在资源管理器中选工具--文件夹选项--查看, 然后去掉“使用简单文件共享”。

再谈声卡识别但不出声的问题

上次在 一个关于声卡识别的问题 提到了一个关于声卡在设备管理器中能够识别, 但是声音选项中缺说找不到音频设备的问题。 我转的解法是用Plug and Play Software Device Enumerator替换一个已有设备ISAPNP Read Data Port。起初我认为是识别有误, 但后来感到有些不对劲, 觉得那本身是一个正常的系统设备。 虽然能正常工作, 但毕竟不是完美解决方案。 后来再次尝试了上次 也提到的重装Plug and Play Software Device Enumerator的方法: 1.假设windows装在c:\windows下, 将c:\windows\inf\machine.inf, c:\windows\system32\streamci.dll, c:\windows\system32 \drivers\swenum.sys拷到一个临时目录下 2.修改machine.inf,找到[ControlFlags], 把下面一行ExcludeFromSelect=*删去 3.如果现在设备管理器中有Plug and Play Software Device Enumerator, 那么用现在的临时目录给它更新驱动即可,否则依次进 入控制面板->添加硬件, 几次"下一步"后依次选"添加新的硬件设备","安装我手动从列表选择的硬件","显示所有设备","从磁盘 安装", 此时选那个目录, 然后厂商选"(标准系统设备)", 型号选"Plug and Play Software Device Enumerator", 然后安装便可 。 最后还查到一个解法, 是说在注册表中删除所有swenum的相关项, 然后就能自动识别Plug and Play Software Device Enumerator 了, 不过这个没试过, 不知是否真的可行。

一个关于声卡识别的问题

环境为Windows XP SP2, 声卡realtek hd audio, 似乎是nvidia的主板 症状比较特别, 是偶然卸了某驱动后发现很多硬件不能用了, 打开设备管理器发现dvd-rom, 声卡等都有黄色叹号, 另外还有一个"Plug and Play Software Device Enumerator" 也是这样。 一开始想用"卸载-重新识别"的方法, 但是那个"Plug and Play Software Device Enumerator"卸掉便一去不复返了。 一开始我没在意, 全心折腾声卡, 但是总是不行, 后来在网上艰难搜索才发现问题就出现在那个"Plug and Play Software Device Enumerator"上。 网上有个从系统目录copy出inf, sys, dll个一个文件, 稍微修改并利用它们安装一个这个硬件的方法。 我没试成功(后来发现是没理解好说明)。 之后在 http://www.softwaretipsandtricks.com/forum/windows-xp/7021-no-sound-says-no-audio-device-but-drivers-there-enabled-working-properly-5.html 找到了一种解法, 原文加翻译如下: 1. From Device Manager (be sure to select View/Show hidden devices), find the 'ISAPNP Read Data Port' device from the System Devices list. (Of note: once I successfully repaired this problem, this device no longer appears.) 在设备管理器中(注意选上查看->显示隐藏的设备。(译注:似乎不选也可))找到ISAPNP Read Data Port这个设备(当成功进行下面操作后, 这个设备将不再存在(译注:成功后会由Plug and Play Software Device Enumerator取而代之, 也就是说, 问题应该是对这个硬件的...

初尝 64位 linux kernel

机器是athlon64的, 不跑跑64bit linux实在不过瘾, 于是下了个linux kernel 2.6.22.5自己编译看, 一开始下载是想编译32位的, 但是启动时有点小问题, 中间会卡住, 要不断按开机键才能继续, 挺诡异的, 但是64位的编译好后竟然没有这个问题了, 比较有趣。 在编译前进行配置时倒是出了些问题, 由于我要在32位系统下编译64位内核, 是交叉编译, 不是很熟练, 查了半天在发现应该在make是加入ARCH=x86_64的参数。(ubuntu里习惯称amd64, 但linux内核里叫x86_64) 另外configure的时候也有问题, 我直接make ARCH=x86_64总报错, make ARCH=x86_64 config也不行, 后来想到, 现在的.config是按i386配置的, 可能跟64位的有冲突, 于是用make ARCH=x86_64 oldconfig重新配置, 别说, 还真问了几个新问题, 之后再make ARCH=x86_64就可以编译了, 最后别忘了编译模块,再都安装就好了。 现在运行挺不错, 但是aptitude不能找到64位程序, 还有待研究。

dojo学习笔记 (一)

最近几天开始学习dojo 0.9.0, 主要是看它的源码和测试样例, 以下是这几天的研究成果 一、 dojo 概述 我用的是dojo 0.9.0, 下载压缩包解压后有四个文件夹, 依次为: dijit: 提供了很多ui控件, 被称为widget。 dojo: 提供了很多跨浏览器的实用函数, dojox: 似乎是提供了一些插件性质的东西, 我只对dojox.flash有点了解 util:里面只有个doh, 功能不明 二、 dojo库的使用 首要的是在html里导入dojo.js文件, dojo加载支持很多参数, 其中我目前用到的有parseOnLoad和isDebug. 设定参数的方法有两种, 一种是在导入dojo.js前通过javascript建立一个对象djConfig,包含要设定的键值对,如djConfig={isDebug:true}; 另一种是在<script>标签里加入djConfig属性,值为JSON语法的键值对, 如<script djConfig="isDebug:true" src="dojo.js"></script> 一开始我对于后一种方法感到很神奇, 起初我以为javascript可以获得自己所在标签的信息, 后来看dojo.js, 查找djConfig, 发现它一上来就判断djConfig是否存在, 否则就建立新值,这时我认为djConfig标签可以作为一个对象在javascript中可以访问, 但亲自尝试后发现并不行。于是我甚至认为这是dojo的一个bug, 但在随后的研究中我发现它确实起作用,于是不得不再认真得看dojo.js(当然是dojo.js.uncompressed.js), 发现原来它会遍历所有script标签,并对导入dojo的标签的djConfig进行处理, 实际上就是加上一对括号然后eval一下。 此时我才恍然大悟。 再说说那两个参数, isDebug不必多说, parseOnLoad是指定dojo.js是否在html加载完毕后进行扫描,识别通过标记方法声明的对象(比如dijit的widget就都支持这种声明, 十分方便)如<div dojoType=dijit.form.Menu> ...

linux 下 驱动 Acer 笔记本 Realtek ALC268 声卡

我这个笔记本是Acer的, 声卡为nvidia mcp67集成, 解码器为realtek alc268 刚装上ubuntu 7.04后声卡能够识别, 有nvidia unknown device 和alc268字样, 但是不能发声。 起初认为是声卡没有识别好, 但是装了最新的alsa1.0.15rc1和ossv4都没效果, 了解了update-pciid才知道其实已经识别了声卡, 而问题出现在 realtek alc268上。 realtek官网上也有个驱动, 下了一看,里面原来也是alsa1.0.14, 只是驱动版本号比较特别。装上后仍不起作用。 在网上搜了很多文章, 其中这个比较好 Bug #116326 in linux-source-2.6.22 (Ubuntu): “No audio INTEL HD audio - Realtek ALC268 codec - Toshiba A205-S4577” 看来这个问题主要出在新型的笔记本上。 另外我还得知了alsa1.0.14对alc268支持的不是很好。上面那个链接里, 中间有几个人帖上了for realtek的alsa补丁, 看样子能起作用。 他们说1.0.14上支持的声卡列表里没有alc268。还有一点, 提出这个问题的人是toshiba的笔记本, 下面帖子中多次提到了model=toshiba这个参数, 于是我自然想到有没有for acer的。 于是我把目光放在了1.0.15rc1上, 看changlog里赫然有个alc268, 而其中专门多了一个acer笔记本的model。 我顿时眼前一亮。 有戏! 再看一下alsa的安装说明, 应该在snd_hda_intel模块加载时加上model=xxx 的参数。 那我这情况自然是在/etc/modprobe.d/options里加一句options snd_hda_intel model=acer 然后重启(可能仅重加载snd-hda-intel也可), 听到了熟悉的ubuntu启动声音。 啊哈哈哈!!!

update-pciids

今天学会了这个命令, 主要是lspci时一大堆unknown, 而驱动里明明支持那些id, 但是就是不能显示正确的字符串, 后来知道了update-pciids这个命令, 可以下载到最新的pci id, 之后lspci少了几个unknown. 此时才恍然大悟, 原来lspci显示的字符串跟驱动没有关系, 而是自己有一个索引。

[转] Firefox 加速技巧

转载请注明出处: www.NiDaYe.orG ,谢谢 作者:Roby Liang 很早很早以前曾经写过一篇“ Firefox 终极加速 ”的文章,可以通过手动修改 user.js 文件来获取理论上的最佳浏览速度,后来发现这种修改方式对于普通用户来说真的有点勉为其难,而且国内的网络环境并不尽如人意,我们所做的 js 优化修改在臃堵的网路上显得那么渺小与无助。 不过聊胜于无,让我们暂且先把这些复杂的优化操作变的简单一点,然后再来亲自感觉一下这些已经在网络上流传了很久的提速技巧吧。下面的操作我们都在 about:config 里进行。在 Firefox 的地址栏中输入 about:config,让我们开始提速吧。 network.http.pipelining 在 Filter 中输入 network.http.pipelining,双击赋值为 true,默认为 false。如果没有找到这个键值,可以右键新建一个 Boolean,把她赋值为 true 就 OK 了。 还 是像我在从前解释过的那样,激活这个键值之后,Pipelining 同时发出成倍数的连接请求,从而达到提升连接速度的效果。网络上的大多数网站都是基于 HTTP 协议,而 HTTP 1.1 可以支持多线程的连接请求,通过这个操作可以减少 Firefox 载入网页的时间。不过并不是所有网页所在的服务器都支持这种操作,所以当你修改键值之后却看不到一点实际效果的时候,请不要对我破口大骂。 network.http.pipelining.maxrequests 在 Filter 中输入 network.http.pipelining.maxrequests,双击并赋值为 8,默认键值为 4。 network.http.proxy.pipelining 在 Filter 中输入 network.http.proxy.pipelining,双击并赋值为 true。 这两条优化的道理同上,这里就不再多解释了。 network.dns.disableIPv6 在 Filter 中输入 network.dns.disableIPv6,双击并赋值为 true。 IPv6 把 IP 地址由 32 位增加到 128 位,从而能够支持更大的地址空间,当用户在终端向一个 IPv6-capable DNS 服务器发送连接请求时...