Archive for 05月, 2006
修改rox-filer缺省打开文本文件的程序,text/c/h 星期一, 05月 22nd, 2006
wine加了字体,终于快了起来。 星期一, 05月 22nd, 2006
$ alias
alias ag=’sudo apt-get upgrade’
alias ai=’sudo apt-get install’
alias ar=’sudo apt-get remove’
alias as=’apt-cache search’
alias au=’sudo apt-get update’
alias l=’ls -CF’
alias la=’ls -A’
alias ll=’ls -l’
alias ls=’ls –color=auto’
alias sg=’sudo gedit’
alias sv=’sudo vi’
alias pg=’pgrep -l’
$ ai wine
$ wineconsole
$ cd ~/.wine/drive_c/windows/fonts
$ ll
总计 0
lrwxrwxrwx 1 exp exp 35 2006-05-22 11:38 simfang.ttf -> /home/exp/install/fonts/simfang.ttf
lrwxrwxrwx 1 exp exp 34 2006-05-22 11:38 simhei.ttf -> /home/exp/install/fonts/simhei.ttf
lrwxrwxrwx 1 exp exp 34 2006-05-22 11:38 simkai.ttf -> /home/exp/install/fonts/simkai.ttf
lrwxrwxrwx 1 exp exp 33 2006-05-22 11:45 SIMLI.TTF -> /home/exp/install/fonts/SIMLI.TTF
lrwxrwxrwx 1 exp exp 34 2006-05-22 11:45 SIMSUN.TTC -> /home/exp/install/fonts/SIMSUN.TTC
lrwxrwxrwx 1 exp exp 34 2006-05-22 11:45 SIMSUN.TTF -> /home/exp/install/fonts/SIMSUN.TTF
lrwxrwxrwx 1 exp exp 34 2006-05-22 11:45 SIMYOU.TTF -> /home/exp/install/fonts/SIMYOU.TTF
tar.gz-选定文件按照目录名打包v4 星期四, 05月 18th, 2006
直接在nautilus或者rox的右键菜单里面执行。调试是在rox-filer里面做的。
| 代码: |
| #!/bin/bashdir=${1%\/*} cd $dir NOW=`date ‘+%Y-%m-%d-%H-%M-%S’` #取得压缩包的文件名。只有一个文件时,直接使用文件名。多个文件,取目录名 #取最后一段作文件名前缀 #处理空格和特殊符号。 for i in $* #执行 |
调试很久。就是为了解决文件名的特殊符号的问题。结果,所有文件名都用”包起来就没事了。教训。
我针对的文件比较特殊。都是fvwm里面auto-button.bash调用的。做备份。
| 引用: |
| K70|rhythmbox||amixer set PCM 10%+|amixer set PCM 10%-.png K71|Exec alsamixergui.png K95|Exec ${fvwm}root-关机.png S1|gnome-terminal.png S2|opera.png S30|gaim.png S32|amule.png S39|Exec gnome-search-tool.png S40|gedit|sudo gedit.png S5|rox|nautilus.png S72|${fvwm}import-截图|gnome-screenshot –delay=5.png S76|gthumb.png S78|totem||amixer set PCM 10%+|amixer set PCM 10%-.png S79|gimp.png S80|meld.png S81|nvu.png S83|quake3.png S91|Restart.png S92|Pick Destroy.png S93|quit.png S94|WindowList|Menu MenuFvwmRoot.png S95|Exec ${fvwm}root-关机.png |
fvwm下,方便的挂载设备。pmount 星期二, 05月 16th, 2006
用pmount挂载usb盘,最简单。这是对于没在fstab里面列出的设备的。虽然pmount的规则一堆,其实都是很容易符合的。
| 代码: |
| exp@eexpress:/media$ pmount /dev/sda1 exp@eexpress:/media$ cat /etc/mtab |grep sda /dev/sda1 /media/sda1 vfat rw,noexec,nosuid,nodev,quiet,shortname=mixed,uid=1000,gid=1000,umask=077,iocharset=utf8 0 0 |
rox还真不错。fstab里面设置了的设备,都是用不同图标显示的。点/media/cdrom0,就会自动挂载。退出目录就问你要不要卸载。右键还有“弹出/卸载”这些菜单。就是提示一个已挂载的错误。不爽。
| 引用: |
| 挂载 /media/cdrom0 mount: block device /dev/hdc is write-protected, mounting read-only 挂载失败 (经已挂载)完成 发现错误. |
但是CD音乐光盘,就不能挂了。还是要用mount带一堆东西了。
终于找到一个uC编译器。 星期一, 05月 15th, 2006
http://sdcc.sourceforge.net/
http://sdcc.sourceforge.net/doc/sdccman.pdf
支持还真多。以前一直找68的,没找到。搞半天,这里有08的支持。
| 引用: |
| 3.2.1 Processor Selection Options -mmcs51 Generate code for the Intel MCS51 family of processors. This is the default processor target. -mds390 Generate code for the Dallas DS80C390 processor. -mds400 Generate code for the Dallas DS80C400 processor. -mhc08 Generate code for the Freescale/Motorola HC08 family of processors. -mz80 Generate code for the Zilog Z80 family of processors. -mgbz80 Generate code for the GameBoy Z80 processor (Not actively maintained). -mavr Generate code for the Atmel AVR processor (In development, not complete). AVR users should probably have a look at winavr http://sourceforge.net/projects/winavr or http://www. avrfreaks.net/index.php?name=PNphpBB2&file=index. -mpic14 Generate code for the Microchip PIC 14-bit processors (p16f84 and variants. In development, not complete). -mpic16 Generate code for the Microchip PIC 16-bit processors (p18f452 and variants. In development, not complete). -mtlcs900h Generate code for the Toshiba TLCS-900H processor (Not maintained, not complete). -mxa51 Generate code for the Phillips XA51 processor (Not maintained, not complete). |
产生的文件比较齐全的。
| 代码: |
| sdcc -mhc08 main.c |
main.asm main.ihx main.lst main.mem main.rst main.sym
main.c main.lnk main.map main.rel main.S19
非常规矩啊。
下次仔细比较代码生成水平。和商业软件的比较lst文件。
使用display还是最快的。功能也多。 星期一, 05月 15th, 2006
上次看别人说用display。自己一直没用这个。试了一下。快的死。功能一堆,只是界面需要熟悉一下而已。
命令调用也非常齐全。帮助在 file:///usr/share/doc/imagemagick/www/display.html 。
使用awk的RS变量,一次显示出ini的一个段。 星期三, 05月 10th, 2006
记得有个取多行的参数。原来是RS。岂不是方便得很。
$ awk -F[ 'BEGIN{RS = ""} /Fonts]/’ ~/.opera/opera6.ini
[Fonts]
H1=32,7,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
H2=24,7,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
H3=19,7,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
H4=16,7,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
H5=13,7,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
H6=11,7,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
Form.Button=10,4,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
Form.Input=10,4,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
Form.Text=10,4,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
Normal=10,4,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
PRE=10,4,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
Toolbar=10,4,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
Dialog=10,4,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
Panel=10,4,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
Email=10,4,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
EmailCompose=10,4,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
Menu=12,4,0,0,0,0,WenQuanYi Bitmap Song [WenQuanYi]
更加绝的写法。
| 代码: |
| $ awk -F’Section’ ‘BEGIN{RS = “”} /\ \”Device/’ /etc/X11/xorg.conf Section “Device” Identifier “NVIDIA Corporation NV34 [GeForce FX 5200]” Driver “nvidia” BusID ”PCI:1:0:0″ #insert part Option “NvAGP” “1″ Option “NoLogo” “true” Option “RenderAccel” “true” Option “AllowGLXWitheComposite” “true” Option “CursorShadow” “1″ #insert end |
| 代码: |
| $● awk -F’Section’ ‘BEGIN{RS = “”} /.*Mouse/’ /etc/X11/xorg.conf Section “InputDevice” Identifier “Configured Mouse” Driver “mouse” Option “CorePointer” Option “Device” “/dev/input/mice” Option “Protocol” “ExplorerPS/2″ Option “ZAxisMapping” “4 5″ Option “Emulate3Buttons” ”true” EndSection Section “ServerLayout” Identifier “Default Layout” Screen “Default Screen” InputDevice ”Generic Keyboard” InputDevice ”Configured Mouse” # InputDevice ”stylus” “SendCoreEvents” # InputDevice ”cursor” “SendCoreEvents” # InputDevice ”eraser” “SendCoreEvents” InputDevice ”Synaptics Touchpad” EndSection |
利用图片名称,自动产生fvwm的button设置。 星期三, 05月 10th, 2006
建立一个auto-button.bash。
| 代码: |
| #!/bin/bashcd $fvwm/auto-png/ for j in S*.png do #图片名就是执行命令。去掉头部的S和尾部的.png后缀,以取得命令。 #echo ——————————- i=${j#S}; i=${i%.png} #——————————— #如果有指定程序,就检查图片尺寸。 if [ -e "/usr/bin/identify" ]; then s=`identify “$j”`; s=${s#*PNG\ }; s=${s:0:2}; else s=”47″ #没有检测软件,就假定尺寸为47。 fi #——————————— if [ $s -gt 24 ]; then #48×48的占用2×2的空间,而且需要附加的图片,以指定动态图标。 s=”2×2″ else #24×24的占用1×1的空间 s=”1×1″; fi echo -n “*DockButtons: ($s,Icon \”$j\”" #——————————— #如果存在D开头的,后更相同序号的图片,设置为动态图片。 d=`echo $i|cut -d ‘|’ -f1` [ -e "D${d}.png" ] && echo -n “, ActiveIcon D${d}.png” [ -e "D${d}.PNG" ] && echo -n “, ActiveIcon D${d}.PNG” #分解命令。次序为左,右,上,下,4个鼠标操作。需要让awk不输入换行!! echo $i|awk -F’|’ ‘$2!=”" {print “, Action(Mouse 1) Exec “$2″ \\”}’ echo $i|awk -F’|’ ‘$3!=”" {print “, Action(Mouse 3) Exec “$3″ \\”}’ echo $i|awk -F’|’ ‘$4!=”" {print “, Action(Mouse 4) Exec “$4″ \\”}’ echo $i|awk -F’|’ ‘$5!=”" {print “, Action(Mouse 5) Exec “$5″ \\”}’ echo “)” #——————————— done |
在指定目录里面使用这样的图片名字。S\d\d表示有效的图片,后面由|分割鼠标的4个动作,D\d\d的图片表示对应的序号的动态图片。
| 引用: |
| D1.png S1|gnome-terminal.png S2|opera.png S3|gaim.png S4|gedit|sudo gedit.png S5|nautilus|rox.png S70|rhythmbox||amixer set PCM 10%+|amixer set PCM 10%-.png S71|alsamixergui.png S72|gnome-screenshot –delay=5|gnome-screen –window.png S76|gqview.png S78|totem.png S79|gimp.png |
在button的配置文件中,相应位置,使用此行调用bash。
| 代码: |
| PipeRead `bash $[fvwm]/auto-png/auto-button.bash` |
bash将图片文件名分解成命令,自动产生如下结果,插入配置文件的当前位置。相当于你自己在这里写一堆配置。
| 代码: |
| $ ./auto-button.bash *DockButtons: (2×2,Icon “S1|gnome-terminal.png”, ActiveIcon D1.png, Action(Mouse 1) Exec gnome-terminal \ ) *DockButtons: (2×2,Icon “S2|opera.png”, Action(Mouse 1) Exec opera \ ) *DockButtons: (2×2,Icon “S3|gaim.png”, Action(Mouse 1) Exec gaim \ ) *DockButtons: (2×2,Icon “S4|gedit|sudo gedit.png”, Action(Mouse 1) Exec gedit \ , Action(Mouse 3) Exec sudo gedit \ ) *DockButtons: (2×2,Icon “S5|nautilus|rox.png”, Action(Mouse 1) Exec nautilus \ , Action(Mouse 3) Exec rox \ ) *DockButtons: (2×2,Icon “S70|rhythmbox||amixer set PCM 10%+|amixer set PCM 10%-.png”, Action(Mouse 1) Exec rhythmbox \ , Action(Mouse 4) Exec amixer set PCM 10%+ \ , Action(Mouse 5) Exec amixer set PCM 10%- \ ) *DockButtons: (2×2,Icon “S71|alsamixergui.png”, Action(Mouse 1) Exec alsamixergui \ ) *DockButtons: (2×2,Icon “S72|gnome-screenshot –delay=5|gnome-screen –window.png”, Action(Mouse 1) Exec gnome-screenshot –delay=5 \ , Action(Mouse 3) Exec gnome-screen –window \ ) *DockButtons: (2×2,Icon “S76|gqview.png”, Action(Mouse 1) Exec gqview \ ) *DockButtons: (2×2,Icon “S78|totem.png”, Action(Mouse 1) Exec totem \ ) *DockButtons: (2×2,Icon “S79|gimp.png”, Action(Mouse 1) Exec gimp \ ) |



