hi, is there more editor color scheme for MonoDevelop ide ??.. or… does someone can share some ones for me?..
Cheers…
hi, is there more editor color scheme for MonoDevelop ide ??.. or… does someone can share some ones for me?..
Cheers…
on a mac, command-,
and in syntax highlighting, there’s the themes. or in Windows, however you get to preferences (should be file) and thn syntax highlighting.
Thanks, yes, i have seen that, indeed i want to add more themes, but i’m seeing that monodevelo is a bit complicated finding color schemes …
I’m working on one right now. It’s a real mess to do actually.
Two pages that are invaluable:
http://www.teknynja.com/2009/10/monodevelop-custom-color-schemes.html
https://github.com/mono/monodevelop/tree/master/main/src/core/Mono.Texteditor/Styles
The first link gives a brief overview of how to do it. The 2nd link has some actual XML files you can take for starters.
Strangely, Unity’s Monodevelop will throw all kinds of errors with any of the default style files. I had to take all the #xxxxxx hex color codes out of any bgColor or color field below the environment section or I’d get errors. I created a bunch of new color definitions at the top for the replaced hex codes and substituted the names below where the hex codes were.
To save a bunch of trouble, you can start with my current theme (in progress). I’m trying to make a theme like the old UniSciTE, but I’m finding a lot of limitations.
<EditorStyle name="MyStyle" _description="Old UniSciTE color scheme - work in progress">
<!-- color palette -->
<Color name="comment-green" value="#008000"/>
<Color name="keyword-blue" value="#0000ff"/>
<Color name="skyblue" value="#204a87"/>
<Color name="aluminium1" value="#eeeeec"/>
<Color name="aluminium2" value="#d3d7cf"/>
<Color name="aluminium3" value="#babdb6"/>
<Color name="aluminium4" value="#888a85"/>
<Color name="aluminium5" value="#555753"/>
<Color name="aluminium6" value="#2e3436"/>
<Color name="darkblue" value="#00007f"/>
<Color name="medred" value="#a31515"/>
<Color name="medcyan" value="#2b91af"/>
<Color name="medcyan2" value="#007f7f"/>
<Color name="red" value="#cc0000"/>
<Color name="paleblue" value="#bfd2f9"/>
<!-- environment -->
<Style name="text" color="black" bgColor="white"/>
<Style name="text.selection" color="white" bgColor="darkblue"/>
<Style name="text.background.searchresult" color="yellow"/>
<Style name="text.link" color="skyblue"/>
<Style name="caret" color="black" bgColor="white"/>
<Style name="marker.line" color="aluminium1"/>
<Style name="marker.ruler" color="aluminium3"/>
<Style name="marker.whitespace" color="medcyan"/>
<Style name="marker.invalidline" color="red"/>
<Style name="marker.bracket" color="aluminium4" bgColor="aluminium1"/>
<Style name="marker.bookmark.color1" color="black"/>
<Style name="marker.bookmark.color2" color="paleblue"/>
<Style name="linenumber" color="medcyan" bgColor="white"/>
<Style name="linenumber.highlight" color="medcyan"/>
<Style name="iconbar" color="aluminium1"/>
<Style name="iconbar.separator" color="aluminium3"/>
<Style name="fold" color="aluminium3" bgColor="white"/>
<Style name="fold.highlight" color="aluminium5"/>
<Style name="fold.togglemarker" color="black"/>
<!-- highlighting -->
<Style name="comment" color="comment-green"/>
<Style name="text.preprocessor" color="purple"/>
<Style name="text.markup" color="skyblue"/>
<Style name="constant" color="medcyan2"/>
<Style name="constant.language" color="darkblue" weight="bold"/>
<Style name="string" color="medred"/>
<Style name="string.single" color="medred"/>
<Style name="string.double" color="medred"/>
<Style name="string.other" color="medred"/>
<Style name="keyword" color="darkblue" weight="bold">
<Style name="access" weight="bold"/>
</Style>
</EditorStyle>
Edit: I cleaned up the below instructions a bit.
How to install:
1. Create a file with an .xml extension and copy and paste the code from above into it and save it wherever you like.
2. In MonoDevelop, go to Tools → Preferences → Syntax Highlighting → Add and select your XML file. MD will import the file into the right folder. (In windows this folder is located at %appdata%\MonoDevelop-Unity\syntaxmodes. If you want to edit this file, you can either edit it in this directory or reimport it from elsewhere.)
3. It should appear in the list of styles after importing. Select it, click OK. If it did not show up, close and reopen MonoDevelop and it should be in the list.
To edit the styles:
You can edit the XML file in the %appdata%\MonoDevelop-Unity folder directly, or if you prefer to edit a copy in another location, make sure to reimport it each time.
After making changes, save, then close and re-open MonoDevelop. (Yes, this is a hassle. I set up a hot key combo for MD in Windows Cntl + Shift + Alt + M so I can get back into MD quickly.)
This page has a bunch of keywords to which you can assign colors. Otherwise, I find MonoDevelop’s documentation on this frustrating. There is an example of a few bolds up there in the code, but otherwise, I’m still looking to find a page with all the styles available.
EDIT: This page has the default XML style which contains a lot of stuff not in my example. I would guess this is a master template that the others inherit from because it doesn’t have any of the same styles as the other files. This may be useful for someone wanting to go even further in customizing the look.
Compared to UniSciTE this thing is really hard on the eyes no matter what scheme I pick. I’m finding a lot of issues such as bolds not being bold enough to really notice. Also, a lot of types seem to be all lumped together in the “keyword” type. Not very friendly. There doesn’t seem to be a way to make keywords like “function” styled differently from other keywords like Time. (EDIT: There is actually… see below) Also, none of Unity’s class properties highlight like Time.deltaTime (the .deltaTime part) like they used to. I would wager there isn’t a way to do it since the Unity staff themselves left it out.
I’m really considering tossing MD and going back to UniSciTE. It’s a hassle they completely removed it from the 3.4 install. MonoDevelop is SLOOOOOOW if you have all the code completion stuff on. I honestly don’t think it’s ready for prime time and should not have been forced on us in 3.4
Addition:
Here are some more styles for various keywords. Trial and error is the only way to find out which things they modify. Replace color = “” with your own colors.
** **<Style name="keyword" color="brown" weight="bold"> <Style name="access" color="black" weight="bold" /> <Style name="namespace" color="accent_green_base" weight="bold"/> <Style name="property" color="accent_blue_base" weight="bold"/> <Style name="modifier" color="accent_red" weight="bold"/> <Style name="type" color="accent_deep_red" weight="bold"/> <Style name="declaration" color="accent_blue_shadow" weight="bold"/> <Style name="access" color="black" weight="bold" /> <Style name="operator" color="accent_dark_violet"/> <Style name="operator.declaration" color="darkblue" weight="bold"/> <Style name="selection" color="darkblue" weight="bold"/> <Style name="iteration" color="darkblue" weight="bold"/> <Style name="jump" color="darkblue" weight="bold"/> <Style name="context" color="darkblue" /> <Style name="exceptions" color="accent_orange" weight="bold"/> <Style name="parameter" color="darkblue" weight="bold"/> <Style name="misc" color="darkblue"/> </Style>** **
Hey Guavaman, thanks a lot for this!, IDE colors are really important to me, because black bg relaxes my eyes, i will check above links… thanks !
I use one that’s based on XCode default theme. Lauri Taimila
Thanks Dart, i will try that too, looks soft for the eyes, (i really can´t imagine how developers can work with white bg…
)
I know what you mean ![]()

hehe, 1 hour of scripting and you only see white everywhere… wow…
btw Xcode color is amazing…
I do that all the time. But only because my monitor refuses to go dim enough even with software brighness settings. Curse those contrast ratio marketroids!
Being able to change the colors is nice, but I cannot for the life of me figure out how to change the font in the main editor! From what I see by searching, it seems like there’s supposed to be an option in Preferences → General, but it’s just not there. Can’t find anything scouring the files in the install folder either. I hate this font… really hard to read. I always used the varying-width font in UniSciTE for most files and only the ones where I have a 2D table did I switch over to fixed-width. I also liked being able to make comments a smaller point size in scintila.
EDIT: Found it. Oops. The editor font setting is in Preferences → Text Editor → General at the very bottom. However I’m still having a really hard time as most fonts I select when I press OK end up jumping back to the very first font on the list.
You guys saying it’s slow, do you by chance have 20 year old ibm computers that were sold off after the collapse of the soviet union?
Core i7 @ 3.8Ghz, 12GB DDR3-1600, dual GTX 460 SLI, Windows Vista 64-bit
You need a video for proof?
I’ve just about had it with MD. I can’t change the font in the main window. (Edit: Oops, yes I can. I found it.) But now even though there’s a setting to change the pad fonts, every time I choose one it jumps back to the first font on the list. (Edit: Same weird font choosing problem happens in the editor font selector too.)
Scintilla was luxury compared to this. Switching…
Aha, here’s a good link for those who like dark backgrounds.
Edit: Hmm, the instructions are for Mac. For Windows after a bunch of trial and error:
(This theme looks nice and matches Unity 3.4’s colors farily well.)
Note that you’ll also have to change your syntax highlighting scheme. One of the defaults, IRBlack works okay, or you can make a custom one as described in the messages above if you want a truly dark theme including the code editing window.
There may be a better way to install themes so you can get at them from the Interface Theme dropdown box in the Preferences section, but I couldn’t find the right folder. Oh well.
Wow, that looks eye friendly, thanks for sharing ![]()
lol… unity3d 3.4 monodev dark themes… is the page was i looking for. looks like they saw and thought my post ![]()
I updated the above post with instructions on getting it to work in Windows.
Here’s a new dark syntax highlighting style I just finished. The main purpose was that you can use it as a basis for developing your own styles. I removed all static color codes from the styles made the color names identical to the styles they’re used on. All you have to make a style is change colors in the palette sections. No need to mess with anything below that.
Hope this helps someone!
It goes well with Clearlooks Blueblack for your interface theme.
<!-- EvilSmurfStyle.xml
Author: Guavaman
Copyright (c) 2011 Guavaman (http://forum.unity3d.com/members/12523-guavaman)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE. -->
<EditorStyle name="EvilSmurf" _description="Dark background with blue highlights">
<!-- environment palette -->
<Color name="text" value="#f9f9f9"/>
<Color name="text-bg" value="#000000"/>
<Color name="text-selection" value="#000000"/>
<Color name="text-selection-bg" value="#a1a8b1"/>
<Color name="text-link" value="#506f73"/>
<Color name="caret" value="#000000"/>
<Color name="caret-bg" value="#ffffff"/>
<Color name="marker-template-primary_template" value="#b4e4b4"/>
<Color name="marker-template-primary_template-bg" value="#b4e4b4"/>
<Color name="marker-template-primary_highlighted_template" value="#000000"/>
<Color name="marker-template-primary_highlighted_template-bg" value="#b4e4b4"/>
<Color name="marker-template-secondary_template" value="#ffffff"/>
<Color name="marker-template-secondary_template-bg" value="#ffffff"/>
<Color name="marker-template-secondary_highlighted_template" value="#808080"/>
<Color name="marker-template-secondary_highlighted_template-bg" value="#ffffff"/>
<Color name="marker-line" value="#eeeeec"/>
<Color name="marker-ruler" value="#babdb6"/>
<Color name="marker-whitespace" value="#506f73"/>
<Color name="marker-invalidline" value="#cc0000"/>
<Color name="marker-bracket" value="#ffff00"/>
<Color name="marker-bracket-bg" value="#000000"/>
<Color name="marker-bookmark-color1" value="#000000"/>
<Color name="marker-bookmark-color2" value="#bfd2f9"/>
<Color name="linenumber" value="#6c6c6c"/>
<Color name="linenumber-bg" value="#000000"/>
<Color name="iconbar" value="#000000"/>
<Color name="iconbar-separator" value="#babdb6"/>
<Color name="fold" value="#888a85"/>
<Color name="fold-bg" value="#2e3436"/>
<Color name="fold-highlight" value="#555753"/>
<Color name="fold-togglemarker" value="#f9f9f9"/>
<!-- highlighting palette -->
<Color name="comment" value="#448e44"/>
<Color name="text-preprocessor" value="#39a5dd"/>
<Color name="text-markup" value="#39a5dd"/>
<Color name="text-background-searchresult" value="#cc00cc"/>
<Color name="text-background-searchresult-main" value="#cc00cc"/>
<Color name="constant" value="#72cbf9"/>
<Color name="constant-language" value="#72cbf9"/>
<Color name="string" value="#d98f6a"/>
<Color name="string-double" value="#d98f6a"/>
<Color name="string-single" value="#d98f6a"/>
<Color name="string-other" value="#d98f6a"/>
<Color name="keyword" value="#72cbf9"/>
<Color name="keyword-namespace" value="#72cbf9"/>
<Color name="keyword-property" value="#72cbf9"/>
<Color name="keyword-modifier" value="#72cbf9"/>
<Color name="keyword-type" value="#72cbf9"/>
<Color name="keyword-declaration" value="#72cbf9"/>
<Color name="keyword-operator" value="#72cbf9"/>
<Color name="keyword-operator-declaration" value="#72cbf9"/>
<Color name="keyword-selection" value="#72cbf9"/>
<Color name="keyword-iteration" value="#72cbf9"/>
<Color name="keyword-jump" value="#72cbf9"/>
<Color name="keyword-context" value="#72cbf9"/>
<Color name="keyword-exceptions" value="#72cbf9"/>
<Color name="keyword-parameter" value="#72cbf9"/>
<Color name="keyword-misc" value="#72cbf9"/>
<Color name="keyword-semantic-type" value="#72cbf9"/>
<!-- environment styles -->
<Style name="text" color="text" bgColor="text-bg"/>
<Style name="text.selection" color="text-selection" bgColor="text-selection-bg"/>
<Style name="text.background.searchresult" color="text-background-searchresult"/>
<Style name="text.background.searchresult-main" color="text-background-searchresult-main"/>
<Style name="text.link" color="text-link"/>
<Style name="caret" color="caret" bgColor="caret-bg"/>
<Style name="marker.template.primary_template" color="marker-template-primary_template" bgColor="marker-template-primary_template-bg"/>
<Style name="marker.template.primary_highlighted_template" color="marker-template-primary_highlighted_template" bgColor="marker-template-primary_highlighted_template-bg"/>
<Style name="marker.template.secondary_template" color="marker-template-secondary_template" bgColor="marker-template-secondary_template-bg"/>
<Style name="marker.template.secondary_highlighted_template" color="marker-template-secondary_highlighted_template" bgColor="marker-template-secondary_highlighted_template-bg"/>
<Style name="marker.line" color="marker-line"/>
<Style name="marker.ruler" color="marker-ruler"/>
<Style name="marker.whitespace" color="marker-whitespace"/>
<Style name="marker.invalidline" color="marker-invalidline"/>
<Style name="marker.bracket" color="marker-bracket" bgColor="marker-bracket-bg"/>
<Style name="marker.bookmark.color1" color="marker-bookmark-color1"/>
<Style name="marker.bookmark.color2" color="marker-bookmark-color2"/>
<Style name="linenumber" color="linenumber" bgColor="linenumber-bg"/>
<Style name="linenumber.highlight" color="linenumber"/>
<Style name="iconbar" color="iconbar"/>
<Style name="iconbar.separator" color="iconbar-separator"/>
<Style name="fold" color="fold" bgColor="fold-bg"/>
<Style name="fold.highlight" color="fold-highlight"/>
<Style name="fold.togglemarker" color="fold-togglemarker"/>
<!-- highlighting styles -->
<Style name="comment" color="comment"/>
<Style name="text.preprocessor" color="text-preprocessor"/>
<Style name="text.markup" color="text-markup"/>
<Style name="constant" color="constant" weight="bold"/>
<Style name="constant.language" color="constant-language" weight="bold"/>
<Style name="string" color="string"/>
<Style name="string.single" color="string-single"/>
<Style name="string.double" color="string-double"/>
<Style name="string.other" color="string-other"/>
<Style name="keyword" color="keyword" weight="bold">
<Style name="access"/>
<Style name="namespace" color="keyword-namespace" weight="bold"/>
<Style name="property" color="keyword-property" weight="bold"/>
<Style name="modifier" color="keyword-modifier" weight="bold"/>
<Style name="type" color="keyword-type" weight="bold"/>
<Style name="declaration" color="keyword-declaration" weight="bold"/>
<Style name="operator" color="keyword-operator"/>
<Style name="operator.declaration" color="keyword-operator-declaration" weight="bold"/>
<Style name="selection" color="keyword-selection" weight="bold"/>
<Style name="iteration" color="keyword-iteration" weight="bold"/>
<Style name="jump" color="keyword-jump" weight="bold"/>
<Style name="context" color="keyword-context" />
<Style name="exceptions" color="keyword-exceptions" weight="bold"/>
<Style name="parameter" color="keyword-parameter" weight="bold"/>
<Style name="misc" color="keyword-misc"/>
<Style name="semantic.type" color="keyword-semantic-type" weight="bold"/>
</Style>
</EditorStyle>
What i really like to see in monodevelop is better syntax/error highlight improvements.
Undeclared variable usage aren’t highlighted, casting non valid types are also ignored (unless you compile your code which takes ages btw). It will be nice to have them highlighted as in Visual Studio.
I’ve also tried to open my project solution over a network and it works fine (supplying manually all the dependencies) but Unity keeps modifying the solution every time i close it, which means that i have to re-convert the solution over and over again in order to make it VS2010 compatible!
Hel i miss Visual Studio, MonoDevelop completely suk (sorry for the kind words).
@guavaman: Thanks so much man. You totally saved me.
So here is my color scheme, its dark blue tint. Don’t understand how people code on white background, that’s how you go blind at 40.
<!-- CyberStyle.xml by cybereality -->
<EditorStyle name="CyberStyle" _description="Dark colorful scheme by cybereality">
<!-- color palette -->
<Color name="kiwi-green" value="#6ae113"/>
<Color name="blood-red" value="#fb1f25"/>
<Color name="almost-white" value="#fbfbfb"/>
<Color name="light-gray" value="#dcdcdc"/>
<Color name="nice-blue" value="#1281e8"/>
<Color name="light-blue" value="#b0cde8"/>
<Color name="bg-gray" value="#46465b"/>
<Color name="bg-gray-dark" value="#242431"/>
<Color name="bg-gray-darker" value="#101016"/>
<Color name="light-orange" value="#ffbf31"/>
<Color name="hot-purple" value="#ec0ad9"/>
<Color name="comment-green" value="#008000"/>
<Color name="keyword-blue" value="#0000ff"/>
<Color name="skyblue" value="#204a87"/>
<Color name="aluminium1" value="#eeeeec"/>
<Color name="aluminium2" value="#d3d7cf"/>
<Color name="aluminium3" value="#babdb6"/>
<Color name="aluminium4" value="#888a85"/>
<Color name="aluminium5" value="#555753"/>
<Color name="aluminium6" value="#2e3436"/>
<Color name="darkblue" value="#00007f"/>
<Color name="medred" value="#a31515"/>
<Color name="medcyan" value="#2b91af"/>
<Color name="medcyan2" value="#007f7f"/>
<Color name="red" value="#cc0000"/>
<Color name="paleblue" value="#bfd2f9"/>
<!-- environment -->
<Style name="text" color="almost-white" bgColor="bg-gray-dark"/>
<Style name="text.selection" color="light-gray" bgColor="bg-gray"/>
<Style name="text.background.searchresult" color="bg-gray-darker"/>
<Style name="text.link" color="skyblue"/>
<Style name="caret" color="black" bgColor="white"/>
<Style name="marker.line" color="aluminium1"/>
<Style name="marker.ruler" color="aluminium3"/>
<Style name="marker.whitespace" color="medcyan"/>
<Style name="marker.invalidline" color="red"/>
<Style name="marker.bracket" color="aluminium4" bgColor="aluminium1"/>
<Style name="marker.bookmark.color1" color="black"/>
<Style name="marker.bookmark.color2" color="paleblue"/>
<Style name="linenumber" color="white" bgColor="bg-gray-darker"/>
<Style name="linenumber.highlight" color="bg-gray"/>
<Style name="iconbar" color="aluminium1"/>
<Style name="iconbar.separator" color="aluminium3"/>
<Style name="fold" color="aluminium3" bgColor="white"/>
<Style name="fold.highlight" color="aluminium5"/>
<Style name="fold.togglemarker" color="black"/>
<!-- highlighting -->
<Style name="comment" color="kiwi-green"/>
<Style name="text.preprocessor" color="hot-purple"/>
<Style name="text.markup" color="nice-blue"/>
<Style name="constant" color="light-blue"/>
<Style name="constant.language" color="nice-blue" weight="bold"/>
<Style name="string" color="blood-red"/>
<Style name="string.single" color="blood-red"/>
<Style name="string.double" color="blood-red"/>
<Style name="string.other" color="blood-red"/>
<Style name="keyword" color="nice-blue" weight="bold">
<Style name="access" color="black" weight="bold" />
<Style name="namespace" color="light-orange" weight="bold"/>
<Style name="property" color="nice-blue" weight="bold"/>
<Style name="modifier" color="nice-blue" weight="bold"/>
<Style name="type" color="nice-blue" weight="bold"/>
<Style name="declaration" color="nice-blue" weight="bold"/>
<Style name="operator" color="almost-white"/>
<Style name="operator.declaration" color="light-gray" weight="bold"/>
<Style name="selection" color="nice-blue" weight="bold"/>
<Style name="iteration" color="nice-blue" weight="bold"/>
<Style name="jump" color="nice-blue" weight="bold"/>
<Style name="context" color="nice-blue" />
<Style name="exceptions" color="light-orange" weight="bold"/>
<Style name="parameter" color="nice-blue" weight="bold"/>
</Style>
</EditorStyle>
I wouldn’t know since I haven’t jumped into Unity development yet (other things in life have kept me busy), but is there anything special that MonoDevelop does that isn’t covered by a standard programming text editor? If not, TextMate on OS X and Sublime Text on Windows with Mono plugins installed might make snappier, more flexible editors than MonoDevelop. I use TextMate for Lua, PHP, HTML, and CSS and it works quite beautifully.
Of course, if MD is more like an IDE then these might not work as complete replacements, but could still be used for the text editing portion of projects.