自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(102)
  • 收藏
  • 关注

原创 VirtualBox-3.2.10安装ubuntu-10.10启动桌面特效

<br />ubuntu-10.10发布了,急不可待地在VirtualBox中安装了一个,进去之后安装了guest additions,一切正常。可是启动ubuntu的桌面特效却失败了,重装了多次guest additions都不行。<br />上论坛也问过了,没找到解决办法,今天有点空闲跑到VirtualBox官方论坛里随便找找,有很多人碰到了同样的问题,后面有人给了个解决办法:<br />http://forums.virtualbox.org/viewtopic.php

2010-10-19 21:09:00 3868

原创 在gdb中查看stl容器

在gdb中查看stl容器 (本文主要内容来自于http://sourceware.org/gdb/wiki/STLSupport) 目前,gdb默认不能print出stl容器的内容,但是网上有好多种方案来做这件事,我试用了一下,比较方便的是以下两种: Table of Contents1 gdb-stl-views 2 GDB 7.0

2010-01-12 09:56:00 7300 1

原创 emacs中用gdb调试

在emacs中用gdb调试c/c++还是很方便的,不过一直以来用惯了vc6,按起gud默认的按键来说确实不很方便,所以就作了一些按键映射来模仿vc6的调试: (setq gdb-many-windows t)(global-set-key [f5] gdb)(global-set-key [C-f5] gud-run)(global-set-key [S-f5] gud-co

2009-12-05 19:52:00 7164 4

原创 company-0.4.3中ropemacs的问题

company确实很好用,它自带了很多补全的backend,基本上可以满足大部分需要 了。对于python,company提供了两种方式的补全:ropemacs和pysmell,相信大多数 人和我一样,只用ropemacs,很少会用到pysmell(主要是因为ropemacs补全是实 时的,而pysmell需要预先建立索引,对于索引建立之后新加的内容需要重建索 引,这样一遍一遍肯定不舒服)

2009-09-23 14:56:00 2825

原创 OSX10.5中的git

为了省事,在10.5中我都是从code.google.com下载git-osx-installer来安装。不过,从git-1.6.4.1起,作者把git gui依赖的tcl/tk版本升级到8.5了, (OSX10.5默认安装的tcl/tk是8.4的),所以在OSX10.5中运行git gui会报错。 解决办法是自己下载8.5版的tcl/tk安装。不过为了这么点小功能就安装 tcl/tk-8

2009-09-23 14:56:00 2354

原创 grub2调整framebuffer分辨率

grub可以通过传递命令行参数vga=xxx来设置linux终端分辨率。grub2已经取消了vga这个参数,改用gfxpayload来代替。用法是在grub设置中单独用一行:set gfxpayload=800x600x32这样进去之后就是800*600分辨率,32位色,当然可以改为你喜欢的值。也可以写为800x600,不设色深的话会有默认值的。

2009-09-21 14:30:00 6934 3

原创 emacs的Local Variables和vim的Modeline

 emacs和vim都可以通过在文件中设置一些变量来影响当前文档,在emacs中被称为Local Variables或者叫File Variables,在vim中被叫做Modeline。叫法不一样,功能是相同的,不过写法上还有些区别。1 emacs emacs的方式是在第一行用下面的格式:-*- var1: value1; var2: value2; ... -

2009-08-07 14:02:00 3210

原创 从git中永久删除文件以节省空间

 在使用版本管理工具的过程中我们会碰到这样的问题:不小心把一个不该加入版本管理的文件加进去了,有时候这个文件很大,也许我们整个版本库才几百K,但加进去这个没用的文件却有好几百M,我可不想因为这么个破烂东西把整个版本库整个硕大无比,以后维护备份都不方便;还有时候是不小心把一个敏感文件加进去了,比如里面写了信用卡密码的文本文件。这时候我们希望能把它从版本库中永久删除不留

2009-08-04 13:47:00 25981 2

原创 emacs中用ispell检查拼写错误

一直以来不很喜欢用拼写检查的功能(包括在word中),所以一直没在emacs中配置它。不过看到好多人都有这个功能,今天也试验了一下。 我安装的是aspell,很多文章都说需要设置ispell使用aspell,其实ispell已经可以自动地寻找aspell/ispell/hunspell了,按顺序在当前系统中查找,先找到哪个就会用哪个。所以emacs不需要什么配置就可以用ispell了。直接执行

2009-07-30 23:11:00 4409

原创 ffap

在一个c/c++文件中,如果有#include行,想直接打开include的这个文件,以前只知道find-file-at-point命令。 不过这个命令太长了打起来不方便,如果单独为它设个键绑定又太浪费按键了。今天才发现原来emacs已经自带了ffap来实现这个功能。 ffap.el是emacs自带的,不需要require就可以用,不过需要执行一下(ffap-bindings),这样ffa

2009-07-30 23:11:00 2503

原创 emacs里的可视化书签

以前一直用emacs自带的书签功能(c-x r m, c-x r b, c-x r l)。 今天配置Vim的时候看到Vim有个VisualMark的插件,可以在文件中可视化地显示书签,比Vim自带的bookmark看起来直观,并且它使用和Visual Studio一样的键绑定,对于用习惯Visual Studio的人来说很方便。 突然觉得不习惯emacs这样的书签,有没有类似VisualM

2009-07-30 23:11:00 3618

原创 用org代替muse记日记

用emacs写日记已经好几年了,从最开始的emacs-wiki到后来的muse。前段时间看到好多大虾在推荐org-mode,加上前段时间已经开始学习用org-mode作todo管理了,而且org-mode已经在emacs中自带了,不需要再像muse那样单独安装了,所以我也准备改用org来记日记了。 这儿只记录一下org代替muse记日记的设定,因为已经有很多教程写org的基本操作和时间管理功能

2009-07-30 23:08:00 10558

原创 几个分布式vcs比较

 最近,比较了一下git, bazaar(bzr), mercurial(hg)这几个分布式版本管理系统。git有人说git跨平台做得不好(对windows支持不好),所以不如bzr和hg。不过照我的使用来看,我觉得git在windows上比bzr和hg都好用。git自带了一个tcl/tk做的gitgui,虽然不是说最方便的,但是使用说我觉得已经够用了,界面和本地界面看起来

2009-07-15 13:55:00 5225

原创 用vim作IDE

 emacs断断续续用了好几年了,却还是觉得不熟练,主要是自动补全和自动提示,感觉在emacs里弄起来太复杂了。今天准备用vim来试试,看能不能方便点。不管在win下还是在linux下,安装好gvim后,把taglist,minibuffer,omnicppcomplete三个插件拷贝到vim的插件目录下(linux下可以放在用户目录的.vim下,windows的话可以放在vim安

2009-07-15 13:53:00 4704

原创 虚拟化技术分类

 今年虚拟化技术炒得火热,最近也了解了一下虚拟化的知识。虚拟化技术大概可以分为以下四类:硬件仿真完全虚拟化半虚拟化操作系统级的虚拟化硬件仿真:最复杂的虚拟化实现技术就是硬件仿真,在这种方法中,可以在宿主系统上创建一个硬件 VM来仿真所想要的硬件。使用硬件仿真的主要问题是速度会非常慢,因为每条指令都必须在底层硬件上进行仿真。但是使用硬件仿真,您可以在一个 AR

2009-07-15 13:53:00 7175

原创 automake备忘

 1.进入目录2.autoscan生成configure.scan3.mv configure.scan configure.in4.修改configure.in加上:AC_INIT(ProjectName, Version, Email)AM_INIT_AUTOMAKE(ProjectName, Version)AC_CONFIG_FILE

2009-07-15 13:53:00 1726

原创 常用命令惯用法

 grep:grep -r -n -i findstr .在目录.(当前目录)的文件中查找字符串findstr。-r表示递归查找,也就是说还包括所有子目录;-n表示在结果中显示行号;-i表示忽略大小写查找。find:find . -type f -maxdepth 1 -name ".[hHcCmM]" -o -name ".[hHcC][pP][pP]"在目录

2009-07-15 13:53:00 1781

原创 编码知识小结

 编码知识小结最早的编码是ascii,它只在1-127,用一个字节就可以表示出来。并且这个字节的第一个位是0。后来,很多国家的语言发现ascii表示的字符太少,比如中文是不可能表示了来的,所以每个国家都发展了自己的扩展编码,如中国的gb2312,台湾的big5,日本的shift-jis等。各个国家的扩展编码有一点是相同的,就是都采用了最大长度为2的变长编码,这主要是为了和asc

2009-07-15 13:52:00 3578

原创 用getopt处理命令行参数

 getoptgetopt用来以-开头的单字符命令行参数,如果选项有附加参数,那么参数可以和空格分开也可以不分开,参数也可以加引号或不加引号,以下格式都是正确的:-o-oa-o a-oaaaa-o "a a"getopt是posix规范的命令行参数处理函数。其原型如下:#include extern c

2009-07-15 13:51:00 2251

原创 sqlite3, access, sqlserver2000的编码设置

 最近做的一个项目(S-LAN)中涉及到对多种数据库(sqlite3, access, sqlserver2000)的操作,但是在编码过程中,碰到了编码的问题,在这儿记录下来免得以后忘记。S-LAN可以使用多种数据库(同一时间只能是一种,但是可以切换),这就需要对各种数据库操作进行封装,sqlite3使用自己的api,access和sqlserver2000都使用ado进行访问,以后还

2009-07-15 13:51:00 4170

原创 tex入门

 texlatex中空格和制表符等空白字符视为相同的空白距离,多个视为一个。latex使用空行来结束段落,多个空行视为一个空行。# $ % ^ & _ { } ~ 是特殊字符,要加反斜线才能得到。tex命令两个形式:1由反斜线加字母字符命令行组成,2是由反斜线加特殊字符组成,参数使用{}括起来,还可以用[]加入一些可选项注释使用%tex文件的结构:以/docum

2009-07-15 13:51:00 2553

原创 正则表达式

 此处是介绍的emacs中的regexp,不过其它地方应该是一样的,我对unix下的正则表达式不了解。.代替任何单个字符*代替无限个任意字符+代替无限个+前面的字符?代表?前的字符出现0次或1次[]中放置字符集^指定出现在列首的符号$指定出现在列尾的符号

2009-07-15 13:50:00 752 1

原创 用doxygen为程序生成文档

 doxygen可以为c++,c,java,IDL,php和c#等生成文档,生成的格式可以是html,latex,rtf,pdf,man等多种格式,甚至可以从无文档的源码中提取代码结构。doxygen使用配置文件来决定所有设置,每个工程都应该有自己的配置文件,用doxygen -g 可以创建一个模板配置文件。配置文件的格式很像Makefile的文件格式。如果要对已有的工程(使用do

2009-07-15 13:50:00 1029

原创 MinGW编译wxWidget静态库的问题

用MinGW编译的wxWidget静态库,编译时正常,用编译后的库编译它的sample也正常,但是我自己的程序用它编译就会报链接错误.如果编译成动态库又一切正常,而且如果用VC6编译静态库也是正常的.这个问题困扰我好几天了.昨天晚上试着把wxWidget编译成表态的单个库,再编译我的程序居然好用了,很是奇怪,睡觉的时候突然想到会不会和gcc编译时链接库的顺序有关,因为单个库的时候顺序是没有

2009-07-15 13:50:00 954

原创 cvs学习

debian下配置cvs按debian的指南,# cd /var/lib; umask 002 ; sudo mkdir cvs # [Woody] FSH# apt-get install cvs cvs-doc cvsbook# export CVSROOT=/var/lib/cvs# cd $CVSROOT# chown root:sr

2009-07-15 13:49:00 367

原创 配置apache2使用能访问用户目录

 其实这个不需要配置,在用户目录下建立public_html的目录,然后在目录里放入index.html即可,这样就可以用ip/~username来访问了。

2009-07-15 13:49:00 519

原创 配置squid使支持匿名访问

squid默认是拒绝任何人访问的,只要把http_access deny all改为http_access allow all就可以让任何人访问了。

2009-07-15 13:49:00 1166

原创 ruby学习笔记二

 ruby的类首字母大写,实例变量名以@开头,方法名和参数名用小写字母或_开头。class Person def initialize(name) @name = name @motherland = "china" end def talk puts "my name is " + @name

2009-07-15 13:29:00 434

原创 ruby学习笔记三

 重载?ruby支持缺省参数,但是ruby中没有方法重载。ruby支持可变参数,在参数名前加*表示可变参数。 def sum(*num) numSum = 0; num.each{|i| numSum += i}; return numSum; end puts sum() puts su

2009-07-15 13:29:00 1149

原创 ruby学习笔记四

 ruby的模块ruby用module...end定义模块。模块提供了一个名字空间,可以防止命名冲突。 module Me def foo() return 0; end end要使用me模块中的函数可以: include Me foo()如果连续inclde了多个模块,而这

2009-07-15 13:29:00 602

原创 wxPython学习2

标准对话框:标准文件对话框:wx.FileDialog标准颜色对话框:wx.ColourDialog布局组件:wx.BoxSizer:在一条线上布局,可以是垂直或者水平,可以包含子sizerwx.GridSizer:固定的二维网格,每个元素有相同的尺寸,要么固定行数要么固定列数,项目被从左至右添加,直到一行被填满然后从下一行开始。wx.FlexGridSizer

2009-07-15 13:21:00 515

原创 ruby学习笔记一

 运行ruby的三种方式:ruby -e ruby语句ruby ruby源文件irb irb是ruby的交互式环境注释与分行=begin和=end表示多行注释,同C++中的/*和*/,=begin中间不能有空格,并且必须在一行的开头。ruby中用;表示一条语句结束,一行中可以有多行语句;换行也代表语句结束,这时可以省略;号;如果语句太长,可以用/连接下行

2009-07-15 13:21:00 757

原创 python线程

python里有两个模块支持线程:thread和threading模块。thread模块thread模块的线程是比较老的线程支持,类似于C中的api,通过调用start_net_thread函数,把线程函数传递进去,就创建一个新的线程执行。其它的同步之类的操作都必须自己调用。threading模块threading模块是比较高级的线程模块,它提供了一个方便使用的Thread类,还担

2009-07-15 13:19:00 527

原创 wxPython学习1

 wxPython程序所必须的五个基本步骤:1.导入必须的wxPython包2.子类化wxPython应用程序类(*注:书上说是必须子类化,不过我试验直接实例化wx.App也是可以的)3.定义一个应用程序的初始化方法4.创建一个应用程序类的实例5.进入应用程序的主事件循环(MainLoop())有两种方式导入wxPython包:老的方式和新的方式:老的方式包

2009-07-15 13:19:00 1695

原创 用struct模块处理二进制数据

 有的时候需要用python处理二进制数据,比如,存取文件,socket操作时.这时候,可以使用python的struct模块来完成.可以用struct来处理c语言中的结构体.struct模块中最重要的三个函数是pack(), unpack(), calcsize()pack(fmt, v1, v2, ...) 按照给定的格式(fmt),把数据封装成字符串(实际上是类似于c结

2009-07-15 13:18:00 3216

原创 python的正则表达式

python的正则表达式模块叫re使用正则表达式的通常步骤:1.先用re.compile编译得到一个RegexObject,表示一个regexp2.然后用pattern的match, search方法,得到MatchObject3.再用MatchObject得到匹配的位置,匹配的字符串等信息RegexObject的常用函数:reobj.match(str[, pos[,

2009-07-15 13:17:00 612

原创 python的内置工具

 内置函数str(string) 返回对象的字符串表示list(seq)tuple(seq)int(x) 把字符串或数字转换为整数long(x)float(x)Complex(real, image)hex(i)oct(i)ord(c)

2009-07-15 13:16:00 519

原创 python的unicode支持

从python1.6版开始引入了Unicode字符串.在字符串定义前加u或者U,表示这个字符串是Unicode字符串,如果用type()来测试的话,会发现它的类型不是str,而是一个新的类型unicode.unicode()内建函数的作用和u/U类似,它以一个字符串为参数,返回一个Unicode字符串.encode内建方法以一个字符串为参数,返回一个经过编码的字符串.在python2.

2009-07-15 13:16:00 1320

原创

类中重载操作符:__init__ 构造函数 创建对象Class()__del__ 析构函数 释放对象的时候__add__ "+" X + y__or__ |(按位或) X | y__repr__ 打印,转换 print

2009-07-15 13:15:00 284

原创 异常

trytry语句用来异常自理,它支持以下子句:except name: 捕获name类型的异常except name, value 捕获name类型的异常及它的附加数据except (name1, name2, name3): 捕获任何列出的异常except: 捕获所有异

2009-07-15 13:15:00 449

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除