ebook_compiler (week #5)

Tuesday, January 29, 2013 Labels: , ,

This is a simple utility that converts .md (markdown) files to html. It then combines them into one .html file.

The real benefit of this is that I can separate my book into separate files. As many or as few as I want. I currently have split up my little book into chapters and sub-sections; one file each.

This little utility will only convert md files that have changed, into html. Once all html files are up to date, they are combined into a single file and wrapped inside the template.

It supports a settings file (_ebook_config.txt) and a html template file (_ebook_template.txt).

_ebook_config.txt
title=My book title
ext=*.md

The template file is really just an html file. Use @SPLIT@ to indicate in the template where the book contents will be. See the examples folder in the code for details.

This is not a markdown to html compiler: It relies upon markdown.pl (a Perl script) available from daring fireball for the actual conversion.


Check out the source code on GitHub!


It is definitely a work in progress, but it does what I need for the book I'm working on. And, it is 100 times faster than editing a single md file and converting the whole thing every time.

I miss macros in Visual Studio 2012

Wednesday, January 23, 2013 Labels:

I just thought I'd share with everyone how frustrating it is to not be able to create a simple Macro in Visual Studio 2012. I know I can create an extension and it is extremely easy to do compared to previous releases.. But seriously..

I want to add a two line macro. I don’t want to create a whole project and fifty lines of code to accomplish the same thing..

Minecraft Launcher (week #4)

Tuesday, January 22, 2013 Labels: ,

Provides a simple interface to launch multiple Minecraft installations. It also allows the user to Rename, Copy, Delete, and Hide client installations.

The launcher reads client directories from its current directory and lists them for the user to choose. Once chosen a junction point is created in the %AppData%\.minecraft directory pointing to the chosen client version and Minecraft is executed from its normal location. NO changes are made, nor needed, in Minecraft itself.

Check out the Minecraft Launcher home page for downloads and screenshots!
Check out the source code on GitHub!

Setup

The process is pretty straight forward.

  • Create a new directory to hold all of the Minecraft client versions. I use 'C:\Minecraft' but you (should be able to) use whatever you like.The process is pretty simple and straight-forward.
  • Move your %AppData%\.minecraft directory into 'C:\Minecraft'
  • Rename the .minecraft directory to '\x.y.z-default' replacing the x, y, and z with your minecraft's version info. You can also change 'default' to whatever you want, for instance 'cc,gravgun,ic2,etc.' to indicate the mods that are applied. Basically name it to anything you want that would distinguish it from other versions.
  • Place the MinecraftLauncher.exe and/or mcli.exe in the 'C:\Minecraft' directory.

The MinecraftLauncher.exe is a Windows Forms application that looks a little nicer than mcli.exe, which is a command-line equivalent for those who prefer the CLI. They both behave the same way.

In order to Rename, Copy, or Remove clients in the WinForms version, right click the button. In the CLI version, type the command in, instead of the number. For instance, 'rename', 'copy', 'delete', and 'hide'.

You can create as many client versions and mod configurations you want. There are no limits other than disk space. (Technically, you can create up to 65534 give or take...)

Minecraft Launcher and associated files are released under the MIT License, see LICENSE.txt for details.

8-bit Retro Games + Basic/Cheesy Graphics = Super High-End/Expensive Graphics Card .. !?

Monday, January 21, 2013 Labels:

So, here is a rant I'm been holding on for quite a while now. When I look at games like Minecraft and a whole slew of similar retro-style, indie games they look like a lot of fun! And, most of them are! They are done really well too.

However, I just don't understand why the hardware requirements are so heavy and extreme in so many of these games. I know not everyone is a "Carmack" or "Abrash" but seriously! I wrote 3D game engines and prototypes nearly 20 years ago that looked better and would run on the hardware of the day, just fine! Those were what, 486's and early Pentium machines!? And, I am definitely not a game developer!

Minecraft gets about 3 fps on my kids' netbooks after disabling and/or lowering every possible feature. Most of these new indie games won't even start up on those netbooks! Basic platformer-style game won't even run!!

So, really.. the question is this: Are the gaming libraries used these days crap? Or are the programmers not so good, inefficient, lazy..?

gitstatus (week #3)

Tuesday, January 15, 2013 Labels: , , ,

» Displays an interactive Git status on the command-line.

Check out the source code and downloads on GitHub!

This is a simple application that allows you to get the status of your Git directory interactively. What I mean by interactively is you can diff files* and mark files for adding right from the command-line.

*In order to diff files you must create a Git alias named 'difftool' that opens/launches an external application to perform the diff. If the alias does not open a different tool (something other than the built in 'diff' command, it will be ignored and lock-up the gitstatus application.

Currently, it only works on modified files. It won't let you add files that are not already part of the repository. I only felt that this utility was needed when modifying files, etc. Let me know, if you would like it extended or fork it yourself!

Yes, it is very quick and dirty. However, it works nicely for what it was made for!

gitstatus is released using the MIT License, see LICENSE.txt for details.

wifian (week #2)

Tuesday, January 8, 2013 Labels:
A simple Wi-Fi signal strength analyzer (CLI-based). It should be pretty straight forward...
I was looking for a super fast and simple to use signal analyzer and didn't find one I liked. All I wanted was something to show me directional signal strength and quality. Pretty simple, but I couldn't find what I wanted. So here is my version.
When running it, sometimes it takes about 30-60 seconds to reflect changes to the signals, add/removing adapters, etc.
wifian is released using the MIT License, see LICENSE.txt for details.
The WlanAPI.cs file is also released using the MIT License and is Copyright (c) 2013 Ilya Konstantinov or Monfort Software Engineering 2007. See http://managedwifi.codeplex.com/ for more details regarding it.
 

editpath (week #1)

Tuesday, January 1, 2013 Labels:
My first application for my new challenge is editpath.

This is a very simple application that when run, easily allows you to load up the system or user PATH environment variable, edit it, then save it back.

Not only does it provide a multi-line textbox for editing the paths all in one long string, it also provides a nice grid for easily editing individual paths.

Check out the source code and downloads!

Also, for those of you who are interested in such ui-candy type-of-things, take a look at how the folder browser works; It will maintain environment variables in the paths! Nice, right!?

New Year's Resolution

While I have a handful of personal New Year's Resolutions, I haven't yet chosen anything that is really technology-based. So, after thinking about it I've decided to release a new application every week!

It may be for Windows, Debian/Linux, Android, JavaScript+HTML5+CSS3, or something else!? It may or may not be open-source (ie: provided with source code), although most likely they will all be released under an MIT License.

I've already uploaded a few applications to github, including something I wrote yesterday - wifian, which is a small WiFi Signal Strength Analyzer..

So, here goes...

Older Posts Home Newer Posts