Vim is my favourite editor, I often use vim to read open source C code, Later, I found cscope is quite good tool to jump back and forth between different C source files to better understand how those C sources connect together in a large open source C code project.
cscopes_maps.vim can be downloaded from http://cscope.sourceforge.net/cscope_maps.vim, put this file under ~/.vim/plugin and run cscope -b -R -k under the folder of open source project, for example cd /usr/src/linux-2.28.x;cscope -b -R -k. then open a C source file, move cursor under a function name, press ctrl + ] will jump to the function declaration/definition of .c/.h file. use ctrl + t, ctrl + ^, etc to jump back and forth.
type :help cscope to get more help info about cscope at vim command mode, also vim folding can be helpful to get a broad picture of C source file, type :help folding to get more info about vim folding.
DISA: Direct Inward System Access, application allows someone from outside the telephone switch (PBX) to obtain an <emphasis>internal</emphasis> system dialtone and to place calls from it as if they were placing a call from within the switch.
Sampel Extension Usage:
exten => 123,1,DISA(111,disa-context,,123@default,np)
or
exten => 123,1,DISA(/etc/asterisk/passcode.txt)
passcode.txt is like this:
111,disa-context,,123@default
222,disa-context,,123@default
In the for loop, when k is either 00, or 10, the loop would be in password state, entered digit saved in f->subclass and assigned to j, later saved in array exten[i++]=j. when password end with #, k would be set to k|=1 to 3(11), i reset to 0, the password state test k&1 would be all false,so skips all the password state instruction, and do the exten[i++]=j to save entered extension number to array exten, when # entered, break the loop and go to check if k==3.
Sampel Extension Usage:
exten => 123,1,DISA(111,disa-context,,123@default,np)
or
exten => 123,1,DISA(/etc/asterisk/passcode.txt)
passcode.txt is like this:
111,disa-context,,123@default
222,disa-context,,123@default
In the for loop, when k is either 00, or 10, the loop would be in password state, entered digit saved in f->subclass and assigned to j, later saved in array exten[i++]=j. when password end with #, k would be set to k|=1 to 3(11), i reset to 0, the password state test k&1 would be all false,so skips all the password state instruction, and do the exten[i++]=j to save entered extension number to array exten, when # entered, break the loop and go to check if k==3.
I bought a cheap FM/AM and CD player for my little baby, the CD part could not play mp3 format music. Since I have a lot of MP3 music files, I need to convert them to audio CD so that my baby could enjoy the music, I found that mp3cd (written in Perl) is quite intuitive to automatically convert mp3 to CD.
http://outflux.net/unix/software/mp3cd/
http://outflux.net/unix/software/mp3cd/
Next