星期五, 11月 28, 2008

quake console !

今天看到學長說到quake console, 由於我沒玩過quake 不知道那到底是啥, google 了一下才發現原來是一種型態的terminal, 就是模仿 遊戲quake 裡面的指令視窗, 透過快捷鍵可以收放. 目前知道可以提供這樣的軟體有 tilda, yakuake, yeahconsole. 其中我覺得yeahconsole 還算不錯用.
yeahconsole 的設定不難, 我用的terminal 是 rxvt 所以在 ~/.Xresource 加入以下設定
yeahconsole.toggleKey: None+Print
yeahconsole.consoleHeight: 30
yeahconsole.term:urxvtc
yeahconsole.restart:1 #
yeahconsole.aniDelay: 0
然後更新 Xresources 的資訊
xrdb .Xresources
再打開yeahconsole 就行了, 依照我上面的設定的話,是用Print Screen 來顯示, 當然你可以使用任何其他的按鍵, 如果不知道按下去的按鈕應該用什麼名稱表示, 可以用 xev 來查詢. 還有其他很多可以設定的屬性可以 man yeahconsole

另外我也把yeahconsole 做了一點hack, 因為我覺得他顯示或消失的動畫實在太多餘. 直接開source code 把 roll(UP) 跟 roll(DOWN) comment 掉然後重新compile, 就不會有動畫了. 乾淨迅速.

--------------------------------------------
不過後來又看到這篇
http://eexpress.blog.ubuntu.org.cn/2008/04/29/通用的quake-console模式/
想說, 這樣我的fluxbox 應該也可以設定, 就不用另外的軟體來提供這個功能(還是要wmctrl 啦..), 心動不如行動, 馬上來設定一下.

由於我都沒有在用Print Screen, 就拿來當shortcut 吧.
我的方法是多開一個workspace, 然後平常把一個terminal 藏在那邊, 要用的時候用wmctrl 呼叫出來, 然後不要用的時候再藏回去.
-------------
.fluxbox/key:
加入
Print :ToggleCmd {ExecCommand /usr/bin/wmctrl -R 'quaketerm'} {ExecCommand /usr/bin/wmctrl -r 'quaketerm' -t 4}
其中 -t 4 表示切換到第5個 workspace
然後新增
~/bin/bashloop
#!/bin/dash
while true; do bash; done

及 ~/bin/qc
#!/bin/dash
urxvtc -name quaketerm -title quaketerm -e bashloop
然後在 .fluxbox/init
找到 (每個人設定可能不同)
session.screen0.workspaces: 4
改成 (加一個workspace, 來放你的console)
session.screen0.workspaces: 5

.fluxbox/startup: 加入
qc &
這樣開了qc 以後, 可以用 Print 鍵在 current workspace 跟 workspace 4 (第五個) 切換, 達到類似quakeconsole 的效果. 之所以是用切換是因為wmctrl 的hidden 指令好像只能夠最小化視窗,沒辦法達到隱藏視窗的效果,所以藉由把視窗藏到另一個workspace 來達成.
--------------------------
是說用過了以後覺得還是yeahconsole 比較好用,體積也不是說很大,所以後來還是選用了yeahconsole,有興趣的自己可以兩個都試試。至於tilda 跟 yakuake 對我來說似乎是龐大了點,也多了些不必要的功能。還是推薦 yeahconsole 啦!
連結

星期三, 11月 12, 2008

Mumble

因為跟同學在外面住一整棟透天的, 我住最高:五樓, 一樓的如果要找我就要爬樓梯爬到死才找得到我, msn 有時候又講不清, skype 的話好像有點多此一舉(耗頻寬阿 :( ), 所以找了個LAN 對講軟體, 其實本來是要給玩遊戲(CS, WOW, WarIII) 的人用的, 可是也沒說不可以拿來節省體力阿. 此外mumble 還有個神奇的overlay 功能, 可以直接把user list 貼在你的game screen.

試過了TeamSpeak, 雖說是老軟體了, 發展一段時間了其實功能滿齊全的, 可是 Linux 版只支援 OSS, 用aoss 不知道為啥音質是差到了極點. 所以改用 Mumble , ubuntu 預設的套件庫裡面就有 mumble 了, 可以直接裝.
sudo apt-get install mumble mumble-server
註: mumble-server 是 mumble 的 server, 可以不裝, 不過你跟你朋友至少要有一個人裝

其他設定都還蠻簡單的..不多講了. 請 man mumble, murmurd

PulseAudio & Skype 新解!

PulseAudio 還是有不完全的地方阿.. 今天剛考完期中考本來想跟同學打個SC (not CS!) 開了cedega 進去SC 發現沒聲音, 囧掉了, 沒法已經開了遊戲打完那場(還是贏嘛, 喔喝喝) 開始了我與PA 奮鬥的旅程..

Cedega 之所以沒聲音其實我也不太確定為什麼.. 總而言之應該是ALSA 跟 PA 接軌的地方有點問題(因為wine 並沒有直接支援 PA, 所以應該是透過libasound 再由 PA 輸出). 網路上的同好似乎也都有相同無解的問題, 後來看到這篇 又挑起我的希望. 其重點是把 PulseAudio 當作ALSA 其中一個channel, 用dmix 來混合輸出.

步驟記錄一下:
( ~/.pulse/default.pa )
找到
#load-module module-alsa-sink

在他下面加兩行:
load-module module-alsa-source device=dsnooped
load-module module-alsa-sink device=dmix
這是讓pa 把聲音輸出到 dmix, 且增加一個source: dsnooped(等一下解釋), 接下來再把
load-module module-hal-detect
comment 掉, (改成 #load-module module-hal-detect )
然後重開pulseaudio, 重新登出登入或是 (killall pulseaudio && pulseaudio -D)
如此一來, pa 就會輸出到 dmix, 成為alsa 的屬下! (誤

接下來是改 ~/.asoundrc
如果你有照pa 官方或是網路上很多的教學, 可能已經把pcm.!default 設成輸出到pulse, 那麼你可以把 pcm.!default, ctl.!default 刪掉了, 留pcm.pulse & ctl.pulse 就好.

此外, 我又加了
pcm.dsnooped {
type dsnoop
ipc_key 12345
slave {
pcm "hw:1,0"
channels 1
}
}
是要讓skype 不霸佔整個input source.
---
好了! 在這邊大概是告一段落. 接下來就依自己的喜好而調整設定了.
若是希望程式使用 pulseaudio (可以調整個別程式的音量) 且程式直接支援pa, 那當然是直接選pulseaudio, 若只支援alsa, 則選 pulse (pcm.pulse). 若不希望使用pa, 則自行選其他的.

Skype 方面的設定. 我是將input 選 dsnooped (alsa), output兩個選pulse (pa through alsa) 這樣能正常講話又不會把音樂調小聲連 skype 都變小聲.

Cedega 的地方由於之前說過了, pa 用起來有問題, 所以選default (alsa) 來輸出聲音. 這樣就沒問題了!
--------------------
使用dsnoop 的原因是, 我跟朋友玩遊戲時會需要使用 mumble, 可是如果我選我的alsa input source 的話, skype 有電話來我就不能接了, 因為 alsa input 不給分享 source, 但是透過alsa 的 dsnoop plugin, 就可以分享這個input source (其實就有點像dmix).

星期一, 11月 10, 2008

Skype & PulseAudio

使用了PulseAudio 馬上遇到的問題就是 skype 掛了 ( >"< ), 用盡各種手段就是沒法讓skype 正常的播放/接收聲音. 後來找到了PA 的official site 裡面居然有解決的辦法!? (怪了怎麼我一開始沒來找.) http://www.pulseaudio.org/wiki/PerfectSetup

裡面寫到 (其實也好像也是從 Ubuntu forum 轉過來的):
編輯 /etc/pulse/daemon.conf
加入(或uncomment)
default-fragments = 8
default-fragment-size-msec = 5
這之後要重開 pulseaudio 才會讀入這些設定. 一般Ubuntu 的使用者應該只需要登入再登出就可以了
然後在 ~/.asoundrc 加入(這些我之前就有加了)
pcm.pulse { type pulse }
ctl.pulse { type pulse }

然後在skype 的設定裡面把 鈴聲(Ring) 跟 聲音出來(Sound Out)設定成pulse
再把 聲音進去(Sound In) 設定成你的 mic (使用plughw), 然後就沒問題了
我不是很瞭解為什麼要這樣做 skype 才會正常, 不過至少現在可以用了 :p

星期日, 11月 09, 2008

PulseAudio

PulseAudio 是一個 sound server, 基本上就有點像廣播電台一樣, 程式連線上去就可以接收.

用了兩天以後, 我覺得PA 的好處是, 每個程式都是獨立的client, 所以音量控制是分開的. 也許ALSA 也可以做到同樣的管理(不過我沒研究就是), 但是我之前使用ALSA 的時候, mplayer 一調音量整個系統的音量就會受影響. 而PA 接收到的音量控制訊息是只針對一個client 的音量控制, 所以每個程式的音量可以分開設定(好像DJ 喔, 好帥 :p )

壞處是 pulseaudio 其實還蠻耗系統資源的, 有時候pulseaudio 會佔掉4~7% of my cpu, 實在有點難接受一個sound server 就這麼耗資源. 另一個壞處就是我切到別的tty 的時候, pulseaudio 就會停掉. 當我切回來才會繼續播放, 可以解決的話比較好不過不造成嚴重的缺點.

Ubuntu 8.04 以後內建就使用 PulseAudio, 不過不知道為什麼我的好像預設沒有打開, 可能是因為我用的是fluxbox, 如果要在進入desktop 就打開的話只要在 ~/.fluxbox/startup 裡面加入
pulseaudio &
這樣fluxbox 在initialize 的時候就會自動開啟了.

mplayer 開啟的時候似乎就直接會去找pulseaudio 的server, 所以不太需要設定. 但是其他可能沒有支援pulseaudio 的軟體, 就要靠pulseaudio 的 alsa plugin 來把聲音導入/出

方法大概是這樣:
1. 安裝 libasound2-plugins
sudo apt-get install libasound2-plugins
2. 更改 alsa 的預設值, 讓它直接導到 pulseaudio
vim ~/.asoundrc
如果原本有的設定可以留著, 但我是全部都comment 掉了, 想說要用就全部都用PulseAudio, 加入以下設定:
pcm.pulse {
type pulse
}
ctl.pulse {
type pulse
}

pcm.!default {
type pulse
}
ctl.!default {
type pulse
}
這樣alsa 就會預設把聲音輸出給PulseAudio.
基本上這樣設定完大部分的程式都沒什麼問題.

星期日, 8月 31, 2008

flv 轉 avi

今天我媽叫我幫他抓個youtube 的video 轉成 avi.
抓下來不是問題, 網路上一堆免費幫你找flv link 的網頁

不過要轉成avi, 我一時還真想不到在Linux 有什麼軟體可以用..
找了一下發現這篇:
http://youmakemedia.com/2006/10/13/converting-flv-to-mpeg-in-linux/

照著做就ok 了
記錄一下...

裝ffmpeg:
sudo apt-get install ffmpeg
轉檔 (test.flv to test.avi)
ffmpeg -i test.flv -b 2000k -s 320x240 test.avi
基本上video 的bitrate (-b) 用2000~2500k 應該都很夠了, 設超過的話也不會再加檔案大小了, 所以可以自己測看看bitrate 應該用多少, 慢慢增加到檔案大小沒有再改變那樣就差不多了.

星期四, 7月 10, 2008

libiconv

iconv.h 裡面只寫了3個function
iconv_open
iconv
iconv_cloe

而已, 這幾個的用法上網查很容易可以找到
不過今天我在用的時候發現了點問題,
shell 裡我可以用 -c 來忽略一些錯誤, 那我寫程式的時候怎麼辦?
iconv 的manual page 的 ENCODINGS section 裡提供了方法:
在 __tocode 加上 //IGNORE 的suffix 就可以忽略轉換的錯誤
另外 //TRANSLIT 可以將轉換錯誤的字元變成另一個相似字 (好像是)
所以在 iconv_open 時, 把 //IGNORE 的 suffix 加在__tocode 後面就可以了.

星期二, 7月 08, 2008

檔案屬於什麼套件

轉自:
http://andrewtw.wordpress.com/2007/10/25/找尋某個檔案屬於哪一個套件/

安裝 apt-file:
sudo apt-get install apt-file
sudo apt-file update
找/etc/network/interfaces 屬於什麼套件
apt-file search /etc/network/interfaces
或如果在跑人家編好的binary file 可是少了*.so
也可以用這種方法找

星期日, 6月 29, 2008

更新系統時間

有時候電腦的時間會不準
有gui 的 tool 可以直接設定, 如果不想用的話可以使用ntpdate

台灣官方的校時server: time.stdtime.gov.tw
使用方法:
sudo ntpdate time.stdtime.gov.tw #校時
sudo hwclock -w #寫入bios
若想要手動調整時間可以使用 date
date -s 10:10:00

星期三, 6月 25, 2008

rm a file begins with a dash

如果檔案開頭有dash 的話, 直接rm 會出現錯誤
這時候要在前面加個 ./
eg: rm ./-test
就可以了

---edit 21:09 06/25/08 --

rm -- -test
也可以 ( thanks to Mark Raddatz )

星期二, 6月 24, 2008

mplayer in fluxbox !

這幾天在用電腦, 突然覺得每次mplayer 都佔一個terminal 有點煩
所以開始想有沒有辦法讓 fluxbox bind 一些key 來控制mplayer

一開始我打算用mplayer + (nc + retty) 來做, 是可以做可是有點麻煩
做法大概是用
nc -c retty $(pidof mplayer) -l -p [port] 作為server,
然後 echo "command" |nc localhost [port] -q 1 來控制
這樣需要改一點nc 的code .. 有時間再說

今天在surf 的時候看到這篇, 是FVWM 的 user 提供的解法, fluxbox 也可以用喔!
原來是mplayer 本來就提供pipe in command 的 功能 :p (我還大費周張!@%&$!)

大致上的步驟...
mkfifo ~/.mplayer/pipe #做個named pipe 給mplayer 讀


開啟mplayer: (可以放到menu 或另外bind key, 不然乾脆開機直接打開
mplayer -slave -idle -input file=~/.mplayer/pipe


-slave 用來關閉mplayer 從 stdin 讀取command
-idle 是用來啟動mplayer 並且halt 在那邊等你command
-input 是來開啟神奇的pipe 功能

再來就在fluxbox 的設定 bind 一點key: (~/.fluxbox/keys )
Control Next :ExecCommand echo "pt_step 1" > ~/.mplayer/pipe
Control Prior :ExecCommand echo "pt_step -1" > ~/.mplayer/pipe
Control KP_Add :ExecCommand echo "volume +1" > ~/.mplayer/pipe
Control KP_Subtract :ExecCommand echo "volume -1" > ~/.mplayer/pipe
Control KP_0 :ExecCommand echo "pause" > ~/.mplayer/pipe


其實就是 echo "command" > ~/.mplayer/pipe
可以用的command 可以查mplayer ( mplayer -input cmdlist )

個人比較常用的還有 loadlist:
echo "loadlist ~/music/xxxxx" > ~/.mplayer/pipe

學原po 說一句:
Now I have a simple but cool "Fluxbox-Player".

星期一, 6月 23, 2008

readline - set show-all-if-ambiguous

tab 是 terminal 裡面很重要的按鍵, 是由 readline 提供的 auto complete
沒有 auto complete 的話, 就像dash, 打指令都會想發瘋

在 /etc/inputrc 或 ~/.inputrc 加入

set show-all-if-ambiguous on

就可以按一次 tab 就把 candidates 列出來
不然要按兩次才會把有相同prefix 的 candidate 列出

有好處有壞處, 不過習慣就好

星期日, 6月 22, 2008

檔名 Big5 -> UTF8 (2) -- convmv

相信各位使用Linux 的人都有經驗抓下來的檔案是Big5 的編碼.. 麻煩
我之前寫過一個script 用來轉換檔名:
http://freehaha.blogspot.com/2006/09/big5-utf8.html

今天碰巧看到一個人家已經寫好的工具 -- convmv
用法跟iconv 差不多

convmv -r -f big5 -t utf8 folder/

就可以把folder 下的filename big5->utf8 :D

星期三, 6月 18, 2008

urxvt

相信有用rxvt 的人有經驗..有時候不小心碰到ctrl+shift 就跑出黃色小框框...
man 裡面是這樣寫的...
Apart from that, rxvt-unicode is also much better internationalised than its
predecessor, supports things such as XFT and ISO 14755 that are handy in
i18n-environments, is faster, and has a lot bugs less than the original rxvt.
This all in addition to dozens of other small improvements.

well.. 對我來說.. 這實在是很煩人的功能 :(
所以抓了source 來compile..

mkdir urxvt && cd urxvt
apt-get source rxvt-unicode
cd rxvt-unicode-* && cd debian
vim rules
找到 --enable-iso14755 (萬惡的根源?)
改成 --disable-iso14755, 存檔關閉

cd .. && sudo dpkg-buildpackage -rfakeroot -uc -b
就開始做 deb 了, 不過執行這項動作你可能需要安裝一些額外的套件
以我為例, 需要 debhelper, libxpm-dev, autotools-dev, quilt, chrpath, fakeroot
(sudo apt-get install debhelper, libxpm-dev, autotools-dev, quilt, chrpath, fakeroot )

.deb 建好以後就可以 dpkg -i rxvt-unicode-ml_8.4-1_i386.deb 安裝囉

星期日, 6月 15, 2008

urxvt, overthespot

rxvt 越用越順了,不過有個問題就是他好像沒有OverTheSpot 這個功能,讓我每次都要找我的input box 在哪。google 了一下,發現原來是可以設定的:

修改~/.Xresources:
加入
URxvt.preeditType: OverTheSpot

然後重新讀取resource 檔
xrdb .Xresource

大功告成 :D

星期四, 6月 12, 2008

ies4linux 安裝記錄.

主要是轉自:
http://www.xepc.org/en/2008/01/05/eeepc-install-ies4linux/

學校的網頁設計實在不太好, 有些東西ff 跑不起來
只好來裝ies4linux

事實上我以前也裝過. 可是最近都直接開virtualbox 想說沒差
主要是因為今天室友問我怎麼裝, 就來裝裝看
照官方步驟的話 會遇到一點問題(好像也不是每個人都會遇到)

假如你安裝的過程中看到一堆 pid 參數錯誤的訊息
修改 lib/function.sh

pid = $ (wget-q-b-t 1-T 5-U "$ useragent"-o / dev / null $ URL $ WGETFLAGS-O "$ file" | sed-e 's / [^ 0-9] / / g ')
改成
pid = $ (LC_ALL = C LANG = C wget-q-b-t 1-T 5-U "$ useragent"-o / dev / null $ URL $ WGETFLAGS-O "$ file" | sed-e 's / [^ 0-9] / / g ')

就可以了, 安裝:
./ies4linux --no-gui

星期二, 5月 27, 2008

rxvt-unicode

說實在我已經用了mlterm 好久了, 一直覺得速度, font 的設置不錯. 不過一直有個問題就是mlterm 在判斷編碼的時候有時候會有些問題, 像是會把簡體的'會' 誤判成不知道什麼編碼
造成他找不到字型, 也不會fall back 去找別的. 除了這點其實mlterm 是個很不錯的 terminal emulator.

直到這兩天我受不了, 決定解決這個問題.
除了mlterm 以外支援unicode比較好的應該就是rxvt-unicode 了, 當初在選的時候也有試過, 不過忘記是什麼原因了, 後來用了mlterm. 今天發現 urxvt (rxvt-unicode) 對編碼的判斷比較好, 而且找不到字體會fall back 去找別的.
改了字體
URxvt.font: xft:Monaco:pixelsize=13,xft:LiHei Pro:pixelsize=13, xft:STHeiti:pixelsize:13

現在字體都顯示的很好了. 只是多了個問題, 有些bbs 上的符號寬度不對, 整個ansi 圖都亂掉了, 上網找到了這篇: http://victor.csie.org/blog/archives/257 , 把charmap 調整過就可以了.
順便記錄一下..
wget http://victor.csie.org/archive/UTF-8.gz
sudo cp UTF-8.gz /usr/share/i18n/charmaps/
改/etc/belocs/locale-gen.conf
PURGE=yes #才會重新讀charmap

然後
sudo locale-gen

再開rxvt, Boom! perfect :D

星期日, 5月 25, 2008

locale-gen

好像該把這個記錄一下
不然每次重灌我都要在找一次 @@"

要產生 Big5 的 locale 要透過 locale-gen

echo "zh_TW.Big5 Big5" >> /var/lib/locales/supported.d/zh
locale-gen

就好了

星期日, 5月 18, 2008

釋放記憶體

最近寫了些資料處理的程式..
不知道是我寫不好還是怎樣, 程式跑完以後記憶體用量還是很高
上網找一下有沒有方法可以把一些記憶體 release 掉

sudo su
echo 1>/proc/sys/vm/drop_cache

這樣會把memory 裡用來 cache 的記憶體釋放 (應該是吧)
就會空出一些記憶體了!

firefox 關掉以後, 執行上面那兩行就可以看到一些效果

星期六, 5月 03, 2008

Ubuntu 8.04 First try!

今天回家把家裡的電腦重灌了Hardy, 開機速度還ok
總要先設置一下嘛~最重要的是把terminal 相關弄好
首先就是mlterm + LiHei Pro 字型

想都沒想就 cd /usr/share/language-selector/fontconfig/
結果居然沒有這個目錄
google 了一下發現原來 Hardy 把東西分開了,
變成 /etc/fonts/conf.d/ 下面的一些檔案
事實上這個目錄之前的版本就已經存在 可是我們都只改 language-selector.conf
不過要安裝字型的話還是差不多的
首先先把要裝的 .ttf 放到
/usr/share/fonts/truetype/myfont/
或是
~/.fonts/

執行
sudo fc-cache -f -v

讓系統重新做 font information 的 cache

接下來就是調整 /etc/fonts/conf.d/69-language-selector-zh-tw.conf
把想要的字型 這邊是 LiHei Pro
LiHei Pro 的方式加入 serif, san-serif, monospace 的群組
我是把它放到 Bitstream Vera 的後面,
這樣在某些情況下可以用 Bitstream Vera 的英文字型代替Lihei Pro 的

好了以後, 重開 gdm 登入應該就可以囉 :D

星期日, 4月 20, 2008

pyqt

用 Python 開發一些小軟體真的還蠻快的
加上 Qt , 介面的部分也很容易做出來

這兩天用python 寫了個軟體讓有人 query(irc) 我的時候就 pop 出視窗,主要是因為我用bitlbee 當 IM client, irssi 又在 screen 裡, 所以有時候常常會有沒看到message 的情形, 再來打算用dcc + perl in irssi 做出 bitlbee 外部的 GUI 介面.

其實我本來是想做一個IM client 可以像screen 那樣detach, 同時具有 GUI & console(遠端的時候可以用) 的介面, 不過等有空吧.. XD

星期二, 4月 15, 2008

loading obj in opengl program

最近在學3D programming(新手),由於自己描 model 不太容易,於是用blender 畫了個 model ,但是要怎麼在opengl 裡面顯示出來呢?

上網找到了一個 OBJ loader 目前我還不會用 material 啦,至少現在我要把一個形狀load 出來用這個 class 是還蠻方便的,有需要的人可以試試看。

星期日, 3月 23, 2008

Ubuntu 8.04

Ubuntu 8.04 Countdown!!
我現在用feisty 覺得還蠻穩的
開機換成dash 似乎真的快了些

8.04 希望也很穩 找時間要重慣就來試試看 !

星期五, 3月 14, 2008

8800GT (續)

用 8800GT 果然刺客教條不會lag 了..
不過用 envy 裝了 driver 不知道是有什麼問題
會留下 nvidia-kernel-169.12 沒有裝好的問題

找了半天找不出個所以然.
後來還是覺定要來自已裝一下nvidia driver
參照這篇: http://wiki.ubuntu.org.cn/index.php?title=UbuntuHelp:NvidiaManual&variant=zh-tw

後來發現是我沒有裝 linux-source 所以可能kernel 的recompile 上有問題
不過說也其怪nvidia 的安裝檔怎麼沒有說有這個問題.. :(
anyway, 現在成功了, 就不會每次 apt-get 都說 nvidia-kernel-169.12 有問題

星期一, 3月 10, 2008

8800GT

很少遊戲會讓我想要升級硬體的..
最近開始玩 刺客教條(Assassin's Creed) 還不錯
衝動之下就拜了個 8800GT 回宿舍..

回來裝上以後 windows 下的driver 沒問題
倒是在linux 下我從official site 裝的就是跑不起來, 也不知道是哪裡錯了

google 一下發現 envy 這個還不錯的script 可以自動安裝 nvidia, ATI 的driver
下載下來裝了最新的driver 就可以動了, 還真要感謝envy 的作者, 少走許多冤枉路

不過有機會還是應該來研究一下怎麼裝 graphic card 的 driver 才是 XD

星期六, 2月 02, 2008

Firefox addon -- Foxyproxy

foxyproxy 這個addon 我用了一陣子了,真的還不錯

其它的proxy 其實也都可以用啦, 不過foxyproxy 提拱了方便的sock proxy 選項
可以透過sock proxy 做http, ftp 的連線, 就像 proxychains 一樣

mplayer & codec

每次重灌都一定要做的一件是就是把mplayer 還有codec 裝好 (才能看...影片!?)
同樣的事情實在是做過太多次了,我今天重灌想說…這種事我應該有blog 起來才對
結果一找居然沒有 @@"

mplayer 主要就是把 w32codec 裝好就幾乎什麼都能看了
其實也不難..做過幾次就知道要google 什麼key word .. :p

裝好mplayer 以後, 到mplayer 的官網codec 下載區
下載全部的codec (all-xxxxxxxxxx.tar.bz2) (我都下載這個, 想說全部下下來可以看就好..XD)
然後untar 以後全部放到/usr/lib/win32/ 就可以了!

星期五, 2月 01, 2008

vim buffer->tab

vim 從 v7 以後就有tab 的功能了
我也用很久了,不過有個問題就是當我
vim a.cpp b.cpp ...
以後, 會全部分成buffer , 要開tab 的話就要開tab, 再切buffer
今天逛blog 的時候(其實本來是在學 emacs ) 看到→ Cornelius 的 blog
說有這麼一個 command:
:tab ball
vim 萬歲 !

emacs cc-mode

我也不知道自己現在用的cc-mode 是什麼version @@"
反正就去 sourceforge 把最新的 cc-mode 下了下來.. 5.31.3
untar 後用
emacs -batch -no-site-file -q -f batch-byte-compile cc-*.el
來byte-compile (好像是這麼說的)
開個emacs 的資料夾..
mkdir ~/.emacsd
mv cc-mode-5.31.3 ~/.emacsd

修改一下 ~/.emacs
加入
(add-to-list 'load-path "~/.emacsd/cc-mode-5.31.3")
進到test.cpp
M-x c-version
出現了 Using CC Mode version 5.31.3
看來是有安裝成功.. 賀!

emacs 隨手記(0)

這幾天寒假沒事 ,除了比賽的事情以外總是要學點東西,不然好像有點浪費
在網路上看到了emacs 的介紹,又想起當初學emacs 的痛苦,掙扎了一番,還是決定
再來試試看

當初我也不知道為什麼就選了vim 當作我的editor(可能是因為gmacs 的介面實在太醜了 @@") 後來越用越順, 就愛上了. 學emacs 是想說, 好像也不少人說 emacs 很強大, 甚至有人說一開機就開emacs到關機, 感覺vim 雖然很強大,可是沒有emacs 那麼多元?

Anyway.. 又來學一次 emacs ..
先下手的當然是 上下左右的功能.
C-n, C-p, C-b, C-f 怎麼按鍵分這麼開 @@"
輸入一下還會手養按個Esc (vim 症候群!?)

再來是要來寫個程式.. 開個 test.cpp
好像是進入了cc-mode
int main
{
}
怎麼沒有 syntax hilight :(
原來還要打開 font-lock (在emacs 裡好像是這麼稱呼的)
在 ~/.emacs 加入 (還是用vim 開 ..XD)
(global-font-lock-mode t)
再開一次, 顏色是出來了..
不過tab 還真怪, 是3 格, 而且是用空白代替
我上網找了一下說是要加個
(setq-default tab-width 4 indent-tabs-mode nil)
可是好像沒什麼用 @@"
還有請高人指點...

一個很常用的鍵先記一下...
C-j = newline + tab

星期三, 1月 30, 2008

藍芽耳機

最近在玩藍芽的一些相關東西
想到我爸那邊有個藍芽耳機他買了都沒用
就拿來玩玩 ..

這裡使用的是 Jabra 250

把我的bluetooth adapter 接好以後..
sudo /etc/init.d/bluetooth restart
會開啟hcid 及相關的一些服務..
然後xx:xx:xx:xx:xx:xx

hcitool scan
找到藍芽耳機的位置 xx:xx:xx:xx:xx:xx

讀入btsco 的module:
sudo modprobe snd-bt-sco

passkey-agent 打開: (自己製作的feeder, echo "PIN:0000")
passkey-agent --default /etc/bluetooth/feed-pin.sh

sudo btsco xx:xx:xx:xx:xx:xx
就可以使用了, 不過效果好像沒有我想像的那麼好,可以用就是了