Monday, April 30, 2007

UNIX/Linux - Build essentials

In order to build stuff in Ubuntu, I needed to install the build-essentials:
sudo apt-get install build-essential

Who knew?

Wednesday, April 18, 2007

VIM - Shifting and code formatting

You can shift (indent) code right or left by typing >> or <<, respectively, with your cursor on the line you want to shift.

You can use VIM automatic formating by typing == on the line you want to format.

You can also set the amount of spaces to shift.

You can also shift and format in visual mode (To get into visual mode: SHIFT+V, then j and k to select rows) by selecting the lines you want, then typing >, <, or =.

VIM - Inserting spaces instead of tabs

Insert spaces instead of tabs

set expandtab or set et

Set the width of shifts to 4 for autoindenting and shifting: >> and <<

set shiftwidth=4 or set sw=4

Set where to stop tabs to 4

set tabstop=4 or set ts=4

This is what I have in my ~/.vimrc:

Set expanded tabs with shiftwidth=4 and tabstop=4 for Java, Perl, C, and C++ files

autocmd BufNewFile,BufRead *.java,*.pl,*.c,*.h,*.cc,*.cpp,*.hpp set sw=4 ts=4 et

Tuesday, April 17, 2007

UNIX/Linux - Find command

To look for files in the current directory tree then run a command on them:
find . -name <file-pattern> -exec <command> {} \;


To grep for "hello" inside all .txt files:
find . -name *.txt -exec grep -Hn hello {} \;

Put this in a shell script to recursively grep .cpp and .hpp files for the first argument:
find . -name *.[ch]pp -exec grep -Hn "$1" {} \;

Wednesday, April 11, 2007

RSS - Web comics

Subscribing to web comics is a great way to use RSS.

Here are some comics I subscribe to: