Monthly Archives: July 2014
Sharing
I didn’t realise WordPress tracks shares of my posts. Some interesting stats.
Turns out the most shared post is this one:
https://blenderfox.com/2013/04/03/snippet-chromium-snapshot-download-cygwin/
And the most popular share site is Pinterest (654 shares). Least popular share site is Tumblr (574 shares)
Japanese cat island has more cats than humans and it’s utterly amazing
Game (And Software) Release Stages
This is a Google Developers episode detailing how best to avoid releasing broken or defective games on Google Play. ItĀ speaks of three release stages: Alpha, Beta, and Canary/Staged Rollout. Alpha and Beta, almost all people are aware of. But Canary/Staged Rollout is a new term for me, but makes a lot of sense.
If you develop and/or release software, this is probably worth a watch.
C25K – Week 3 Day 1
I completed C25K Week 3 Day 1 (1.83 km), in 09:25, pace 05:08 min/km, with @RunDouble http://rndb.co/G4Vb
First workout of Week 3, distance training now. Pretty easy – relatively short distances for the intervals, and only four intervals. But, I’m not going to jinx myself
C25K – Week 2 Day 3
I completed C25K Week 2 Day 3 (timed) (3.26 km), in 18:56, pace 05:48 min/km, with @RunDouble http://rndb.co/c4Xn
Final workout of Week 2, next run start Week 3 and begins the distance training.
Related articles
Krum – an action RPG made in Blender GE | BlenderNation
The last time I mentioned Krum was over a year and a half ago. The game has progressed a lot since them!
Hey guys, I’ve made a new trailer video for my game KRUM.
It’s a cartoon-ish style, third-person, role-playing game. KRUM has medieval settings, with some fantasy elements…yeah well, actually it’s just a brutal melee game with advanced combat tactics.
And most important about it – the game it self is using Blender GE and Python 2.62. and all its assets and animations are made in Blender.
Get Yesterday’s date in MS DOS Batch file
A useful snippet of DOS Batch Scripting toĀ get yesterday’s date (or any other historical date for that matter). Very useful to then use with other DOS commands like xcopy or forfiles.
Linux though, it’s a hell of a lot user, just add options to the find command
@echo off
set yyyy=
set $tok=1-3
for /f "tokens=1 delims=.:/-, " %%u in ('date /t') do set $d1=%%u
if "%$d1:~0,1%" GTR "9" set $tok=2-4
for /f "tokens=%$tok% delims=.:/-, " %%u in ('date /t') do (
for /f "skip=1 tokens=2-4 delims=/-,()." %%x in ('echo.^|date') do (
set %%x=%%u
set %%y=%%v
set %%z=%%w
set $d1=
set $tok=))
if "%yyyy%"=="" set yyyy=%yy%
if /I %yyyy% LSS 100 set /A yyyy=2000 + 1%yyyy% - 100
set CurDate=%mm%/%dd%/%yyyy%
set dayCnt=%1
if "%dayCnt%"=="" set dayCnt=1
REM Substract your days here
set /A dd=1%dd% - 100 - %dayCnt%
set /A mm=1%mm% - 100
:CHKDAY
if /I %dd% GTR 0 goto DONE
set /A mm=%mm% - 1
if /I %mm% GTR 0 goto ADJUSTDAY
set /A mm=12
set /A yyyy=%yyyy% - 1
:ADJUSTDAY
if %mm%==1 goto SET31
if %mm%==2 goto LEAPCHK
if %mm%==3 goto SET31
if %mm%==4 goto SET30
if %mm%==5 goto SET31
if %mm%==6 goto SET30
if %mm%==7 goto SET31
if %mm%==8 goto SET31
if %mm%==9 goto SET30
if %mm%==10 goto SET31
if %mm%==11 goto SET30
REM ** Month 12 falls through
:SET31
set /A dd=31 + %dd%
goto CHKDAY
:SET30
set /A dd=30 + %dd%
goto CHKDAY
:LEAPCHK
set /A tt=%yyyy% %% 4
if not %tt%==0 goto SET28
set /A tt=%yyyy% %% 100
if not %tt%==0 goto SET29
set /A tt=%yyyy% %% 400
if %tt%==0 goto SET29
:SET28
set /A dd=28 + %dd%
goto CHKDAY
:SET29
set /A dd=29 + %dd%
goto CHKDAY
:DONE
if /I %mm% LSS 10 set mm=0%mm%
if /I %dd% LSS 10 set dd=0%dd%
REM Set IIS and AWS date variables
set IISDT=%yyyy:~2,2%%mm%%dd%
set AWSDT=%yyyy%-%mm%-%dd%
Custom URLs in Chromium (Edited)
I’ve been tinkering with Second Life and Spotify on Linux, and discovered there’s a known bug in XDG whereby it complains when you try to access a custom protocol link (e.g. secondlife:// or spotify://) that is already registered within XDG. There’s a (rather cumbersome) way ofĀ getting around it, if you’re using Chromium (probably works with Chrome, but I haven’t tried it) First step, add a mime desktop entry – usually in ~/.local/share/application/. This entry must contain a MimeType entry, and a NoDisplay entry. Use the %u to pass the url. This desktop entry will NOT be visible on the menus, and is solely to “connect” to the application you want to invoke when the link is clicked. This example is using the Singularity viewer as an example.
[Desktop Entry] Name=Singularity Comment=Client for Online Virtual Worlds, such as Second Life Exec=~/.singularity-install/handle_secondlifeprotocol.sh %u Icon=~/.singularity-install/singularity_icon.png Terminal=false Type=Application Categories=Application;Network; StartupNotify=true X-Desktop-File-Install-Version=3.0 MimeType=x-scheme-handler/x-secondlife-url NoDisplay=true
Next, inside the program you are calling, you may need to do some manipulation of the passed URLĀ as it will come with escapes (e.g. %20 = space). Ā See later in the post for an example
Finally, make Chromium aware of this new handler, by editing the Chromium preferences, found in (for the Default user), in ~/.config/chromium/Default/Preferences. Chromium must be closed for this to work, or you will lose your changes.Ā In the Preferences file, add thisĀ block of code:
"custom_handlers": { "enabled": true, "ignored_protocol_handlers": [ ], "registered_protocol_handlers": [ { "default": true, "protocol": "secondlife", "title": "Second Life", "url": "x-secondlife-url:%s" } ] },
Note the trailing comma, and the url must be prefixed with the mime type you declared in the desktop entry. Start up Chromium afterwards, thenĀ click the link. When you click on the link, Chromium gets the link, finds there is a custom handler (in Preferences file), passes it to the mime desktop link you created (which contains the mime type), finds the program to use from the desktop link, and passes the url to the program using the arguments you specified.
Here’s an example of what I mean by manipulating of the passed URL. This is the script from the Firestorm Viewer. Singularity uses a VERY similar scriptĀ so the code should be nearly interchangeable. I have hacked this script (changes I have made are in bold) so that it works with SLURLs (Second Life URLs) Ā with both spaces, and prefixed with “app/region”
#!/bin/bash
URL="$1"
NEWURL=$(echo $URL| perl -pe 's/^x-secondlife-url://; tr/+/ /; s/%([a-fA-F0-9]{2,2})/chr(hex($1))/eg;')
URL=echo $NEWURL | sed 's/secondlife:\/\///g' | sed 's/\/app\/region\///g'
if [ -z "$URL" ]; then
#echo Usage: $0 secondlife://...
echo "Usage: $0 [ secondlife:// | hop:// ] ..."
exit
fi
RUN_PATH=dirname "$0" || echo .
#cd “${RUN_PATH}/..”
cd “${RUN_PATH}”
#exec ./firestorm -url \'”${URL}”\’
if [ pidof do-not-directly-run-firestorm-bin
]; then
exec dbus-send –type=method_call –dest=com.secondlife.ViewerAppAPIService /com/secondlife/ViewerAppAPI com.secondlife.ViewerAppAPI.GoSLURL string:$URL
else
exec ../firestorm -url $URL
fi
C25K – Week 2 Day 2
I completed C25K Week 2 Day 2 (timed) (3.21 km), in 19:00, pace 05:55 min/km, with @RunDouble http://rndb.co/J52U
You must be logged in to post a comment.