07 Mar 2011
The MonoDevelop text editor has many commands are not immediately obvious. Some
are accessible from the Edit and Edit->Format menus, and some have default
keybindings, but many can only be used if you manually add
keybindings for them. Some even have
keybindings that are hardcoded into the text
editor,
and will be available unless you override it by assigning that some keybinding
to some other command.
More …
04 Mar 2011
After the caret has been in an identifier in a C# file for a few seconds, then
all the usages of that identifier in the current file are highlighted. This
provides a nice visual cue for finding related code and following code
flow.
More …
03 Mar 2011
Sometimes it’s useful to be able to edit multiple lines at once in a similar
way. This is possible in MonoDevelop using block selections. To make a block
selection, drag the mouse between the start and end points while holding down
the Alt key on Linux or Windows, or Command
key on Mac. Alternatively, you can make a normal selection, then use the
Edit->Toggle block selection mode to toggle the selection into a block
selection with the same start and end points.
More …
02 Mar 2011
One of the most useful pairs of commands in MonoDevelop is Show Next Result
and Show Previous Result. These commands move through items in the most
recently active navigation list. Right after building, they will cycle though
the build errors and warnings; after searching, they cycle through the search
results; after running unit tests, they cycle though the test failures, and so
on.
More …
01 Mar 2011
The MonoDevelop text editor keeps track of the most recent 12 things that have
been cut or copied. This can be useful when you realize you want something you
cut or copied earlier. These items can be found in the Clipboard Ring in the
toolbox. Simply double-click on one to insert it at the caret, or drag it to a
specific location to insert it at that location.
More …
28 Feb 2011
MonoDevelop’s code completion for C# provides highly context-sensitive and
accurate suggestions. However, it can’t provide completion in plain text, such
as comments or strings. To help with cases like this, and for languages where MD
does not have a completion engine, we’ve implemented a feature from Emacs called
“dynamic abbrev”.
More …
25 Feb 2011
One of the most useful refactoring commands is “Rename”, which renames a symbol
by accurately finding all occurrences and changing them. To rename a symbol,
right click on it and choose Refactor->Rename context menu command, or use the
keybinding: F2 on Windows and Linux, and Cmd-R on Mac.
More …
25 Feb 2011
I’m going to be in San Francisco next week for GDC. I’ll be wandering around SF
on Sunday 27th Feb, going to the
summits on Monday and Tuesday, then
on the Mono booth in the GDC Expo Wednesday through
Friday.
More …
24 Feb 2011
When you type the “override” keyword in a C# class, MonoDevelop will show a
completion list of all abstract or virtual members on base classes that have not
been overridden, and interface members that have not been implemented. You don’t
even need to type the modifier (e.g. “public”), you can simply type “override”
directly in the class body.
More …
23 Feb 2011
Code snippets (or code templates) are an incredibly useful feature. They allow
inserting and editing template blocks of code, which is useful for quickly
replicating common patterns, or learning new patterns. This post explains how to
use snippets, and a future post will explain how to create snippets.
More …