Friday, May 11, 2007

redhat - rpm

Install
rpm -i softwarename(s)
Erase
rpm -e softwarename(s)
Query
rpm -q softwarename
rpm documentation

KDE - Umbrello

I tried out Umbrello for KDE. Seems to work better than MagicDraw at reverse engineering C++ code. It's free. Crashed on a couple of the files I tried though.

Firefox - Reduce RAM when minimized

Move Firefox to your hard drive when you minimize it, taking up less memory. And there is no noticeable difference in speed when you restore Firefox.
  • Go to about:config
  • Right-click anywhere → New &rarr Boolean
  • config.trim_on_minimize
  • Set to TRUE
  • Restart Firefox for these settings to take effect
From: 15 Coolest Firefox Tricks Ever on lifehack.org

Wednesday, May 9, 2007

C - Static Keyword

UsageEffect
inside a functionremains even after the function call is long gone
modify a global variableprivate to a certain file
modify a functionmaking those functions visible only to the file itself

KDE - Enable mouse gestures

Run kcontrol
Regional & Accessibility → Input Actions
Gestures tab
Unclick Disable mouse gestues global
Change Mouse button to secondary button (right mouse button)

Open up Konqueror
Hold on to right-mouse button, move left, release
It should have navigated back a page

VIM - Recursively set project path

Put this in your .vimrc
set path=$PWD/**

Visual Studio 2005 Express

Download: http://msdn.microsoft.com/vstudio/express/downloads/

Using Visual C++ 2005 Express Edition with the Microsoft Platform SDK

Cygwin/X - Install 100 dpi fonts

If your fonts look too small, try installing the 100dpi fonts in Cygwin's setup. Under X11, select
xorg-x11-f100: Cygwin/X 100 dpi fonts
In your C:\cygwin\usr\X11R6\bin\startxwin.bat, near the bottom of the file, append "-dpi 100" to this line:
%RUN% XWin -multiwindow -clipboard -silent-dup-error

UNIX/Linux - xhost access

To make your X server available to everyone:
xhost +
You can add this to your .bashrc

Cygwin/X - Startup with Windows

Place a shortcut to
C:\cygwin\usr\X11R6\bin\startxwin.bat
in your startup folder (e.g. Start->All Programs->Startup)

To not have xterm pop up everytime you start up, open startxwin.bat and prepend REM in to this line:
%RUN% xterm -e /usr/bin/bash -l

Wednesday, May 2, 2007

UNIX/Linux - Recursive, forceful remove

For you n00bs, to recursively delete a directory with prompts for each file:
rm -rf dir_name

VIM - Using cscope

Install cscope.

At your project directory, to recursively build the database
cscope -Rb

Place cscope_maps.vim into ~/.vim/plugin.

CTRL+] to search for the word under the cursor.

See the cscope vim tutorial for more details.

VIM - Recursively set the path of the project

Put this in your .vimrc to
" Recursively set the path of the project
set path=$PWD/**

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> {} \;

Examples

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:
#!/bin/bash
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:

Wednesday, March 21, 2007

Cygwin tips

All tips assume you installed Cygwin at C:\cygwin

Use rxvt instead of dos command prompt

Change your cygwin.bat to
@echo off

C:
chdir C:\cygwin\bin

rxvt -e bash --login -i

Customize rxvt

Create a file in your home directory named .Xdefaults
rxvt*foreground:white
rxvt*background:black
rxvt*font: Lucida Console-14
rxvt*scrollBar_right: true
Other rxvt options can be found here.

Fix Home, End, Delete, and Insert keys

Put this into ~/.inputrc
# Home Key
"\e[7~":beginning-of-line

# End Key
"\e[8~":end-of-line

# Delete Key
"\e[3~":delete-char

# Insert Key
"\e[2~":paste-from-clipboard

Then add this to ~/.bashrc
export INPUTRC=$HOME/.inputrc

Friday, March 16, 2007

Web - Firefox Search Engines

You can add your own search engines to the Firefox search bar. Here are some I found:

Tips