Posted June 10th, 2010 by Aidan McQuay, No Comments
Posted May 25th, 2010 by Aidan McQuay, 2 Comments
I’ve been releasing stuff to Github these days, basecamp2text , drupal-irssi , simple-volume-osd , etc. So I’ve been using TortoiseGit as a GUI to make git a little easier to swallow.
On the SVN side of things I’ve been using a library I found over on the EmacsWIKI to interface SVN and emacs. Since I’m using Git so much these days I thought I’d adapt that library to work with TortioseGit.
Right now it only supports log, diff, blame, commit, revert and help. It’s been working great for my uses so far.
tortoise-git.el
(defun tortoise-git-command (command filename)
(start-process "tortoise-git" "foo"
"c:/Progra~1/TortoiseGit/bin/TortoiseProc" (concat "/command:" command)
(concat "/path:" (replace-regexp-in-string "Program Files"
(regexp-quote "Progra~1") (expand-file-name filename))
"")))
(defun tortoise-git-log ()
(interactive)
(tortoise-git-log-select (buffer-file-name)))
(defun tortoise-git-log-select (filename &optional wildcards)
(interactive (find-file-read-args "Find file: " t))
(tortoise-git-command "log" filename))
(defun tortoise-git-diff ()
(interactive)
(tortoise-git-command "diff" (buffer-file-name)))
(defun tortoise-git-blame ()
(interactive)
(tortoise-git-command "blame" (buffer-file-name)))
(defun tortoise-git-commit ()
(interactive)
(tortoise-git-command "commit" (buffer-file-name)))
(defun tortoise-git-commit-select (filename &optional wildcards)
(interactive (find-file-read-args "Find file: " t))
(tortoise-git-command "commit" (buffer-file-name)))
(defun tortoise-git-revert ()
(interactive)
(tortoise-git-revert-select (buffer-file-name)))
(defun tortoise-git-revert-select (filename &optional wildcards)
(interactive (find-file-read-args "Find file: " t))
(tortoise-git-command "revert" filename))
(defun tortoise-git-help ()
(interactive)
(start-process-shell-command "tortoise-git" nil
(concat "/cygdrive/c/Progra~1/TortoiseGit/bin/TortoiseProc /command:help")))
; add key bind
(global-set-key "\C-xgl" 'tortoise-git-log)
(global-set-key "\C-xgL" 'tortoise-git-log-select)
(global-set-key "\C-xg=" 'tortoise-git-diff)
(global-set-key "\C-xgb" 'tortoise-git-blame)
(global-set-key "\C-xgc" 'tortoise-git-commit)
(global-set-key "\C-xgC" 'tortoise-git-commit-select)
(global-set-key "\C-xgs" 'tortoise-git-repostatus)
(global-set-key "\C-xgS" 'tortoise-git-repostatus-select)
(global-set-key "\C-xgr" 'tortoise-git-revert)
(global-set-key "\C-xgR" 'tortoise-git-revert-select)
(global-set-key "\C-xgh" 'tortoise-git-help)
(provide 'tortoise-git)
Watch the github repository for more features in the future:
http://github.com/openist/tortoise-git-emacs
Posted May 20th, 2010 by Aidan McQuay, No Comments
This is a simple autoit script and compiled exe that will create a on screen display of your volume level. It uses your current window theme for styling so it should look consistent and minimal across computers. This is handy for laptops that have finicky volume controls. Check out the screenshot below:
You can grab the source code here:
You can grab the exe file here:
Posted May 20th, 2010 by Aidan McQuay, No Comments
If your using any sort of mirror server (simplecdn, maxcdn, akamai, limelight, etc) you have to be very careful about creating duplicate content that could be spidered by search engines. There’s a way to handle this issue that does not require you to have access to the mirror server itself.
First you have to identify the User Agent the mirror server is using to access your origin site. You will have to create a rewrite condition in your .htaccess file that targets that User Agent, and serves a different robots.txt to the CDN, for SimpleCDN it’s this:
RewriteCond %{HTTP_USER_AGENT} SimpleCDN
RewriteRule ^robots\.txt$ /robots_simplecdn.txt [L]
Now you just need to create a robots_simplecdn.txt and block all robots:
User-agent: *
Disallow: /
Posted May 19th, 2010 by Aidan McQuay, No Comments
I just released a little php script I use to display my basecamp feed on my desktop as a text list.
A simple php program that will take a basecamp feed and format it for text
viewing. I use it to display my basecmap feed on my desktop with samurize.
Setup
1) Add your username/pass/feedurl to the basecamp2php.php file
2) Set the script to run every X via cron
SAMPLE OUTPUT:
--
Basecamp Feed
* Comment posted: Re: Chitka ad's should have blue backgrounds
* Comment posted: Re: Adjust timing on front page popular articles...
* File uploaded: Capture4.jpg (JPG, 135K)
* Comment posted: Re: Improved Static File Caching
* File uploaded: Capture3.jpg (JPG, 249K)
* File uploaded: Capture2.jpg (JPG, 174K)
* File uploaded: Capture1.jpg (JPG, 138K)
* Comment posted: Re: Improved Static File Caching
--
Grab it here: http://github.com/math0ne/basecamp2text