C-M-h : select the whole function
M C-\ indent region between cursor and mark
M-m move to first (non-space) char in this line
M-^ attach this line to previous
M-; formatize and indent comment
C, C++ and Java Modes
M-a beginning of statement
M-e end of statement
M C-a beginning of function
M C-e end of function
C-c RETURN Set cursor to beginning of function and mark at the end
C-c C-q indent the whole function according to indention style
C-c C-a toggle modus in which after electric signs (like {}:';./*) emacs does the indention
C-c C-d toggle auto hungry mode in which emacs deletes groups of spaces with one del-press
C-c C-u go to beginning of this preprocessor statement
C-c C-c comment out marked area
More general (I guess)
M-x outline-minor-mode collapses function definitions in a file to a mere {...}
M-x show-subtree If you are in one of the collapsed functions, this un-collapses it
In order to achive some of the feats coming up now you have to run etags *.c *.h *.cpp (or what ever ending you source files have) in the source directory
M-. (Thats Meta dot) If you are in a function call, this will take you to it's definition
M-x tags-search ENTER Searches through all you etaged
M-, (Meta comma) jumps to the next occurence for tags-search
M-x tags-query-replace yum. This lets you replace some text in all the tagged files
C-M-n
Move forward over a parenthetical group (forward-list).
C-M-p
Move backward over a parenthetical group (backward-list).
C-M-u
Move up in parenthesis structure (backward-up-list).
C-M-d
Move down in parenthesis structure (down-list).
Monday, August 9, 2010
Monday, August 2, 2010
regular expression
Regular Expression | Class | Type | Meaning |
_ | |||
. | all | Character Set | A single character (except newline) |
^ | all | Anchor | Beginning of line |
$ | all | Anchor | End of line |
[...] | all | Character Set | Range of characters |
* | all | Modifier | zero or more duplicates |
\< | Basic | Anchor | Beginning of word |
\> | Basic | Anchor | End of word |
\(..\) | Basic | Backreference | Remembers pattern |
\1..\9 | Basic | Reference | Recalls pattern |
_+ | Extended | Modifier | One or more duplicates |
? | Extended | Modifier | Zero or one duplicate |
\{M,N\} | Extended | Modifier | M to N Duplicates |
(...|...) | Extended | Anchor | Shows alteration |
_ | |||
\(...\|...\) | EMACS | Anchor | Shows alteration |
\w | EMACS | Character set | Matches a letter in a word |
\W | EMACS | Character set | Opposite of \w |
POSIX character sets
POSIX added newer and more portable ways to search for character sets. Instead of using [a-zA-Z] you can replace 'a-zA-Z' with [:alpha:], or to be more complete. replace [a-zA-Z] with [[:alpha:]]. The advantage is that this will match internetional character sets. You can mix the old style and new POSIX styles, such as
grep '[1-9[:alpha:]]'
Here is the fill list
Character Group | Meaning |
[:alnum:] | Alphanumeric |
[:cntrl:] | Control Character |
[:lower:] | Lower case character |
[:space:] | Whitespace |
[:alpha:] | Alphabetic |
[:digit:] | Digit |
[:print:] | Printable character |
[:upper:] | Upper Case Character |
[:blank:] | whitespace, tabe, etc. |
[:graph:] | Printable and visible characters |
[:punct:] | Puctuation |
[:xdigit:] | Extended Digit |
Subscribe to:
Posts (Atom)