昨天,今天,明天,每天的每天,你是否都多懂得一点点...

星期二, 七月 08, 2008

学VIM的好处

高效的编辑器绝不指VIM一种,当时想学一款高效的编辑器,我的目标只集中的能跨平台的几种上. 我知道终有一天,我要玩MAC OS,要玩LINUX,或是其它的操作系统. 于是我选择了VIM,因为我不管在哪里都能找到它. 学校的电脑上也有它,所以要学习和使用都很容易. 这几天玩UBUNTU,如果我不是事先学了VIM,那一路绝没有这么顺利. 而我发现, 在TEXT MODE里,最好不要离开VIM. 就算是运行其它程序,也最好的VIM里,这样,你可以充分利用VIM的剪贴板. 否则, 要修改命令的时候就太麻烦了. 我上一篇文章里的命令都是在VIM里写好,在VIM里执行的,所以最前面都有个! 叹号. 

文本模式播放电影

我本以为在文本模式下只有 ASCII解码的电影,而实际上,经实验,在TEXTMODE也可以像在图形界面一样正常的播放电影文件,不过好像都需要管理员权限.

fullscreen
!sudo mplayer -ao alsa:device=dmix -vo sdl cantgoback2.wmv
!sudo mplayer -ao alsa:device=dmix -vo svga cantgoback2.wmv
center screen
!sudo mplayer -ao alsa:device=dmix -vo ggi cantgoback2.wmv

with console (partial sceen)
!sudo mplayer -ao alsa:device=dmix -vo fbdev cantgoback2.wmv
!sudo mplayer -ao alsa:device=dmix -vo fbdev2 cantgoback2.wmv

ascii
!sudo mplayer -ao alsa:device=dmix -vo caca cantgoback2.wmv

星期一, 七月 07, 2008

remove columns from datatable


            for (int i = 0; i < dt.Columns.Count; ++i)
            {
                if (dt.Columns[i].ColumnName == "IMS")
                    dt.Columns.RemoveAt(i--);
            }

Read excel using c#

create a new c# window application. then, add a datagrid to the form. then do this.
using System.Data.Odbc;
//add code after InitializeComponent();
OdbcConnection con = new OdbcConnection(@"Driver={Microsoft Excel Driver (*.xls)};DBQ=filename.xls");
OdbcCommand cmd = new OdbcCommand(@"SELECT * FROM [Sheet1$]");
cmd.Connection = con;
OdbcDataAdapter da = new OdbcDataAdapter(cmd);
DataSet ds = new DataSet();
DataTable dt = new DataTable();
da.Fill(dt);
dataGridView1.DataSource = dt;



星期日, 七月 06, 2008

英文系统下中文链接

英文系统看网站,中文链接迅雷不认,想把它转成可以认的,半天没找着方法,却好像隐约记得几年前在UNITEC上学的时候有碰过这种情况,忘了是怎么解决的。 突然灵光一闪,想起来了,就是把编码换成西欧的,刷新一下,链接变乱码了,这时候迅雷就认了。下下来的文件名是乱码,改一下就OK了。

星期六, 七月 05, 2008

补一下XFCE的安装方法,就是这么简单

 sudo apt-get install xubuntu-desktop

下载50兆左右吧. 安装后100兆.也不大.小意思.

三四分钟就搞定了.我在想是不是可以TTY1进XFACE,TTY2进GNOME...真变态...觉得是可行的,怕机子受不了,还没试...

刚安装了XFACE,这是进入的方法

代码:
startxfce4
then I can start xfce4
also by.adding
代码:
/usr/bin/startxfce4

into ~/.xinitrc .then type startx ,I can start xfce

网上抄来的, 呵,XFACE虽说是轻量,我打开时怎么觉得它还更漂亮....比GNOME


ubuntu 直接进入 text mode 的方法之一

sudo apt-get install sysv-rc-conf 
sudo sysv-rc-conf
用箭頭鍵往下找到gdm,勾去掉

星期五, 七月 04, 2008

tty

我原以为只有在X下才会有多个TTY,而在TEXT MODE则只有一个, 却不知,在TEXT MODE也是一样的.可以有多个TTY,也是用CTRL+ALT+FX 切换.

JFBTERM在退出的时候会死机. 所以我不敢退出, 但可以从其它的TTY把运行JFBTERM的那个TTY, skill -t ttyx 掉. 就会回到登录界面了. jfbterm的显示的确比ZHCON好,不会花屏.却没有输入法...昏呀. 还是没有完美的上W3M的方案.

ubuntu text mode 终于成功上水木了

首先就是ZHCON要设好,之前因为 defaultencode 用默认的 gb2312, 所以上水木虽然有中文,但是花屏.上水木要把GBK转UNICODE,命令如下

luit -encoding GBK telnet newsmth.net

这是从网上看来的,想到GBK,所以我就把 defaultencode 改成 gbk, 没想到就搞定了. 也许不改的话用 luit -encoding gb2312 telnet newsmth.net 也是可以的,就不想去试了.再把LYNX或W3M等上网的乱码搞定,就爽了.

星期四, 七月 03, 2008

zhcon 黑屏和分辨率解决了

1, /etc/initramfs-tools/modules ---> 加入两行: fbcon vesafb 
2, /etc/modprobe.d/blacklist-framebuffer ->注释掉vesafb 那行 
3, update-initramfs -u


我不知道这三步是不是有效,因为我看了其它一些资料,只做了第四步,所以我把第一二步改回来了.

原来使用的是 zhcon --uft8 --drv=vga , 这次改成 zhcon --drv=fb , 就解决了,分辨率变成800*600了,试着退出也不会黑屏.酷.对了,顺便说一下,之前黑屏的时候,只要盲打zhcon --utf8 --drv=vga , 就可以再次进入zhcon, 又可以看见东西了. 不需要通过终端重启.

ubuntu 改变分辨率后退出ZHCON黑屏

将UBUNTU的TEXT MODE改成800*600后运行 ZHCON,又进入了640*480的模式,于是知道ZHCON的设置里可以更改分辨率.遂退出ZHCON,想更改ZHCON的CONF文件 .没想到就此黑屏...用终端登进去,修改ZHCON.CONF文件,重启.再试ZHCON,还是640*480,昏,为什么修改了还是不启作用. 再退出ZHCON,再黑屏...不给面子.

修改ubuntu 7.10 文本模式分辨率(摘)

1, /etc/initramfs-tools/modules ---> 加入两行: fbcon vesafb 
2, /etc/modprobe.d/blacklist-framebuffer ->注释掉vesafb 那行 
3, update-initramfs -u 
4,/boot/grub/menu.lst 在kernel那一行最后加上 vga=794(794代表1280x1024,791代表1204x768) 
5,重启 

color depth 640x480 800x600 1024x768 1280x1024 1400x1050 1600x1200 
256(8bit) 769 771 773 775  
32000(15bit) 784 787 790 793  
65000(16bit) 785 788 791 794 834 884 
16.7 Mill.(24bit) 786 789 792 795 

我在8.04下,我改成了771,的确有用.而且不影响X11的分辨率,就是UBUNTU的启动画面变成巨大,屏幕装不下了.

星期三, 七月 02, 2008

PUTTY的可爱之处

PUTTY有个优点就是可以随时换编码.我用PUTTY连到UBUNTU的时候用的是UTF-8编码.登上UBUNTU后,我又从UBUNTU里用TLENET上水木. 这时候用UTF-8就会乱码,所以又把编码调成Use font encoding, 然后字体换成MINGLIU上繁体水木,OK了.简体中文就有点困难了.因为用那些宋体什么的还是乱码. 我记得学校有一个微软提供的字体可以上简体水木,但我的电脑里却没这个字体.

MOUNT 中文乱码

直接MOUNT中文会是乱码,这样就OK

sudo mount -t vfat -o iocharset=utf8 /dev/sdb1 ~/shared/

ubuntu 声卡独占(摘)

使用alsa mixer

默认情况下mplayer会独占声卡设备,导致其他程序无法同时输出声音。这可 以通过使用alsa的mixer来解决。

命令行的形式为: 
mplayer -ao alsa:device=dmix <input-file> 
mplayer -ao alsa *.mp3
也可以在其配置文件中加入下面内容来指定: 
ao=alsa:device=dmix

windows 下的播放列表在UBUNTU下不能听了

用MPLAYER 播放 全是乱码, 用VIM打开也是乱码. set fenc 查一下,是 latin1, 于是用 gedit 打开, 另存为 utf-8, 可以用了.

星期二, 七月 01, 2008

UBUNTU 装个声卡 好辛苦

开始是毫无头绪,后来知道要用ALSA,然后就去ALSA的网站下载 ALSA 驱动包, 开始我只下了 DRIVER那个包,后来才知道还要 LIB 和UTIL那两个包. 都下好了, 又装不了, 好像后来是装了 build essential 才让编译. 后来编译某个东西又不让了,说缺少某个文件. 以为自己下错了呢...又去下过,又从新试还是不行. 后来搜到解决方法,就是把缺的文件补上去, 创建空文件就行了. 最后就是那个 alsamixer 了, 不管怎么弄都是 alsamixer: function snd_ctl_open failed for default: No such file or directory. 后来在这个贴子上用它的方法查声卡.

http://ubuntuforums.org/showthread.php?t=205449

我的电脑上是显示没有声卡呀, 用 LSPCI也列不出声卡. 后来用了 ALSACONF 居然就找到声卡了. 识别出是CS4236B (我之前以为是 CS4232), 不过我把所以驱动都装了, 所以没所谓. 从新运行 sudo modprobe snd-cs4236. 再运行 ALSAMIXER就没问题了.只不过那个小喇叭上还是有个禁用的符号,我一度认为没有成功. 后来把音箱和音量都开到最大才发现是有声音的.反正装个声卡装得命都没了.搞了快两天了. 为了查资料方便, 我又把笔记本硬盘换成 WIN2003 那个. 苹果那个系统到现在还有很多问题. 都快不想搞了.

alsa util compile error

feng@feng-desktop:~/桌面/alsa-utils-1.0.16$ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether NLS is requested... yes
checking for msgfmt... no
checking for gmsgfmt... :
checking for xgettext... no
checking for msgmerge... no
checking for style of include used by make... GNU
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 whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for ld used by GCC... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for shared library run path origin... done
checking for CFPreferencesCopyAppValue... no
checking for CFLocaleCopyCurrent... no
checking for GNU gettext in libc... yes
checking whether to use NLS... yes
checking where the gettext function comes from... libc
checking for cross-compiler... gcc
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking for ALSA CFLAGS... 
checking for ALSA LDFLAGS... -lasound -lm -ldl -lpthread
checking for libasound headers version >= 1.0.15... found.
checking for snd_ctl_open in -lasound... yes
checking for snd_tlv_get_dB_range... yes
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for initscr in -lncurses... yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking whether time.h and sys/time.h may both be included... yes
checking whether gcc needs -traditional... no
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... 64
checking for _LARGE_FILES value needed for large files... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating alsactl/Makefile
config.status: creating alsamixer/Makefile
config.status: creating amidi/Makefile
config.status: creating amixer/Makefile
config.status: creating m4/Makefile
config.status: creating po/Makefile.in
config.status: creating alsaconf/alsaconf
config.status: creating alsaconf/Makefile
config.status: creating alsaconf/po/Makefile
config.status: WARNING: alsaconf/po/Makefile.in seems to ignore the --datarootdir setting
config.status: creating aplay/Makefile
config.status: creating include/Makefile
config.status: creating iecset/Makefile
config.status: creating utils/Makefile
config.status: creating utils/alsa-utils.spec
config.status: creating seq/Makefile
config.status: creating seq/aconnect/Makefile
config.status: creating seq/aplaymidi/Makefile
config.status: creating seq/aseqdump/Makefile
config.status: creating seq/aseqnet/Makefile
config.status: creating speaker-test/Makefile
config.status: creating speaker-test/samples/Makefile
config.status: creating include/aconfig.h
config.status: executing po-directories commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
config.status: executing depfiles commands
feng@feng-desktop:~/桌面/alsa-utils-1.0.16$ make
Making all in include
make[1]: Entering directory `/home/feng/桌面/alsa-utils-1.0.16/include'
make all-am
make[2]: Entering directory `/home/feng/桌面/alsa-utils-1.0.16/include'
make[2]: Leaving directory `/home/feng/桌面/alsa-utils-1.0.16/include'
make[1]: Leaving directory `/home/feng/桌面/alsa-utils-1.0.16/include'
Making all in alsactl
make[1]: Entering directory `/home/feng/桌面/alsa-utils-1.0.16/alsactl'
if gcc -DHAVE_CONFIG_H -I. -I. -I../include -g -O2 -MT alsactl.o -MD -MP -MF ".deps/alsactl.Tpo" -c -o alsactl.o alsactl.c; \
 then mv -f ".deps/alsactl.Tpo" ".deps/alsactl.Po"; else rm -f ".deps/alsactl.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../include -g -O2 -MT state.o -MD -MP -MF ".deps/state.Tpo" -c -o state.o state.c; \
 then mv -f ".deps/state.Tpo" ".deps/state.Po"; else rm -f ".deps/state.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I../include -g -O2 -MT names.o -MD -MP -MF ".deps/names.Tpo" -c -o names.o names.c; \
 then mv -f ".deps/names.Tpo" ".deps/names.Po"; else rm -f ".deps/names.Tpo"; exit 1; fi
gcc -g -O2 -o alsactl alsactl.o state.o names.o -lasound -lm -ldl -lpthread
make[1]: Leaving directory `/home/feng/桌面/alsa-utils-1.0.16/alsactl'
Making all in alsaconf
make[1]: Entering directory `/home/feng/桌面/alsa-utils-1.0.16/alsaconf'
Making all in po
make[2]: Entering directory `/home/feng/桌面/alsa-utils-1.0.16/alsaconf/po'
mv: 无法对 "t-ja.gmo" 执行 stat 调用: 没有该文件或目录
make[2]: *** [ja.gmo] 错误 1
make[2]: Leaving directory `/home/feng/桌面/alsa-utils-1.0.16/alsaconf/po'
make[1]: *** [all-recursive] 错误 1
make[1]: Leaving directory `/home/feng/桌面/alsa-utils-1.0.16/alsaconf'
make: *** [all-recursive] 错误 1
feng@feng-desktop:~/桌面/alsa-utils-1.0.16$ 



Ubuntu 编译 问题

configure: error: C compiler cannot create executables

碰到这个问题 只要安装基础包即可


sudo apt-get install build-essential

其它博客地址

此博客的同步博客地址: http://fengnz.wordpress.com
这里进入我的MSN SPACE.