Having done a module manager for BlitzMax called Maximus I’ve received one question several times: will you also make a module manager for Monkey?
My answer at the time was ‘no’. Simply because I didn’t use Monkey nor was I planning to. To be honest, I’m still not planning on using Monkey myself. But there are lots of people who do use Monkey and with the (my assumption) amount of available modules I think Monkey would benefit from a module manager.
Sure, Monkey has a module page which lists some modules, but that’s just a listing. When in time there are more and more modules being released for Monkey it’ll become more tedious and painful to manage all your (installed) Monkey modules.
So I’d like to know if Monkey users have any interest in a module manager which for users will allow them to easily install and update modules. For module authors it’ll be an easy way to publish a module to a central repository (like Maximus does).
That way everyone can benefit from a central repository hosting these modules.
Why am I asking if there’s any interest in this? I’ve got some ideas and I think it’ll make up for a nice summer project. I’m interested to hear peoples opinions on this which I can use to decide to start it all up.
This is a cross post from a topic I started at the BlitzMax forum. Which has also been copied to the Monkey forum. I decided to put it on here as well.
So you started using Vim and were a bit disappointed with the lack of a proper tree-style directory explorer? Meet NERD tree (also on GitHub). With NERD tree you can navigate through your folders and files.
You can choose to always display the sidebar (put
let NERDTreeShowBookmarks=1 in your
.gvimrc) or use its toggle function
NERDTreeToggle, which I’ve got mapped at
map \\ :NERDTreeToggle. If you don’t like to have the tree on the left side you can change it from
let g:NERDTreeWinPos = "right".
NERD tree has lots of shortcuts to improve and speed up navigation. You can always request an overview of these shortcuts with
shift + ? when in the tree window. Some useful shortcuts are:
shift + i to list hidden files.
s to vsplit the current window and open the selected file.
i to split the current window and open the selected file.
t to open file in new tab.
m to modify the file/directory to rename, move, delete or create a file/directory.
shift + c to move into the selected directory.
u to move back one level in the directory tree.
x to close the opened directory tree in which you’re in.
return to open a directory or file.
k or the cursor keys to move up and down in the list.
There are a lot more shortcuts, all explained by opening the help with
shift + ? and it might seem a bit much to memorize all these shortcuts but it’s not that bad really. Using just the
return and cursor keys is enough to navigate and open files, but it really pays of to get to learn the other shortcuts.
Another neat thing of NERD tree is that it supports Bookmarks. To be able to store your bookmarks you need to specify a location where the bookmarks are stored. Generally you do this in your
" Store the bookmarks file
" Show the bookmarks table on startup
To create a bookmark navigate your cursor to the directory you want to bookmark and use the command
Bookmark <name> to create a named bookmark. You can later use this bookmark with
For years I’ve used Courier New in my programming editors and terminal (PuTTY). But there’s a much better font available for that kind of stuff. For the last couple of years I’ve been using Consolas, which is shipped with Windows. I’ve configured my editors and PuTTY to use Consolas 10pt bold as I find it by far the best readable font to use for programming. This font is just the right size at 10pt and setting it to bold gives it a very smooth look.
Here’s how Consolas 10pt bold looks in GVim on Windows 8:
Recently I’ve given some other fonts a try as well because in the showed examples it appears they make a nice programming font. Not too long ago the Adobe Source Code Pro font was released and looking at the screenshot at that page it looks really nice. So I decided to download and install it. But trying it in GVim didn’t gave a satisfying result. It doesn’t look too bad, but it isn’t as compact as Consolas is:
When using Linux (Ubuntu) I always use Droid Sans Mono. But for some reason it looks really bad on Windows:
As you can see Droid Sans Mono is even bigger and just doesn’t look right. I wonder why this is though I suspect it has to do with the font rendering on Windows. I’ve found font rendering on Linux a lot better and for what I’ve seen on Mac OSX as well, though I’ve recently heard a Mac user saying he found the font rendering on Linux even better.
And OK, the fonts don’t look that bad but imagine having to look at it all day when programming. All these examples have been set at 10pt bold and the extra space taken by both Adobe Source Code Pro and Droid Sans Mono is just bad in my opinion.
So far I haven’t found anything better than Consolas when it comes to a programming font on Windows. I’m not looking for a replacement of it but I’m always willing to try something new or different. My main disappointment I think comes with how bad Windows renders these fonts, because I know Droid Sans Mono looks good on Linux. If there’s any programming font that renders really well on Windows I’d really like to hear about it.
I thought it would be nice to start a series of posts on neat tricks and plugins for Vim, called Vim Essentials. I don’t know how often I will do these kind of posts, but I’ve got a couple in mind already.
This first post I’ll start off with Powerline. A plugin for Vim that gives you a better status bar than the default status bar. Your current mode, filetype and used file format is more clear. See the picture below for an example.
After you download and install Powerline you also need to make sure that your
.gvimrc has the following lines:
set laststatus=2 " Always show the statusline
set encoding=utf-8 " Necessary to show Unicode glyphs
Adding these two lines makes sure the status bar is always being shown and the characters used in it can be displayed.
Looking at the screenshots provided by the author of Powerline it should also be possible to display the current Git branch, but I’ve yet to find out how to do so. The version I’ve linked here is deprecated in favor of the Python rewrite, which can be found at https://github.com/Lokaltog/powerline.
I usually use KDiff3 when viewing the differences between files and merging stuff together. But from time to time I’ve found vimdiff to be a nice alternative, especially when I’m logged in through SSH on a server. The problem is I don’t use it that often so I tend to forget the key combinations. So instead I listed them here for future reference.
do – diff obtain
dp – diff put
[c – previous difference
]c – next difference
:diffupdate – diff update
:syntax off – syntax off
zo – open folded text
zc – close folded text
Original source: http://hack2live.blogspot.nl/2009/02/vimdiff-shortcut-keys.html