I had a case where I wanted to move a bunch of email with a particular label to another Gmail account. I couldn’t find a tool in Gmail to migrate email from one account to another. But I did find a more convoluted way… Continue reading “Transfer email from one Gmail account to another”
Category: Guides
How-to’s
Mac OSX Shell Script to automate connecting to WiFi network
I have a Mac laptop running ‘Snow Leopard’ that occasionally will not connect to my home WiFi, even though other devices are connected to the network just fine.
I wrote a small shell script that uses the networksetup command to reset AirPort. If WiFi is still not connected, the script tries to assign the AirPort WiFi network directly. If that doesn’t work, it just resets AirPort again.
Continue reading “Mac OSX Shell Script to automate connecting to WiFi network”
Here is a good guide on how to exclude files and directories from SVN.
Excluding files from your repository
Sometimes you may have types of files or folders in your source code tree that you do not want to include in your source code repository. Everyne developing with Visual Studio will immediately know what I mean: VS automatically makes bin and obj subfolders for your project folder in which it puts the buildresults and also creates *.suo files with your personal settings for a solution.
It would be convenient if we could exclude these files from our repository once and for all without having to manually uncheck them each time we update our project. Fortunatly, Subversion allows us to do this. In fact, there are two possibilities for exclusion.
Global exclude
With the global exclude we can exclude a certain type of file of being added to any repository to which a certain client connects. To do this, you must edit the Subversion “config”…
View original post 406 more words
How to access attached screen after connection dropped
Here’s the situation, you are using bash’s Screen command because you don’t want your flakey internet connection to affect whatever you are working on, and sure enough, the connection drops. Sometimes, when you try to re-attach to this screen session you are told that the screen session is still attached…
~$ screen -r '1234.somescreensession'
There is a screen on:
1234.somescreensession (Attached)
There is no screen to be resumed matching 1234.somescreensession.
How annoying.
UPDATE:
Here is a simple way to take back that screen session.
screen -D -r '1234.somescreensession'
Kudos to Donncha O’Caoimh
Here is a way a longer way to remove the process that is attached to that screen session, so you can reattach to it and continue with whatever you were doing.
- figure out which tty is holding on to the screen session by typing into terminal
ps -ef | grep screen | grep tty
- result of this should be something like
testdev 5760 5688 0 12:31 ttyp1 00:00:00 screen -r 1234.somescreensession
- in this case the tty is 5688, use this to find the login bash that is associated with that tty
ps -ef | grep bash | grep 5688
- result of this should be something like
testdev 5688 5687 0 12:28 ttyp1 00:00:00 -bash
- kill process
kill -9 5687
Now you should be free to re-attach to this screen session.
Kudos to David Mackintosh
MySQL Cheat Sheet and Field Type Sizes
Handy MySQL cheat sheet from Neal Parikh
Breakdown of MySQL Field Types with their corresponding sizes.
Uninstall and Remove Xcode Completely
If you are in a position where you want to remove the colossus that is Xcode, here is the terminal command to use.
sudo /Developer/Library/uninstall-devtools –mode=all
In my case, I was using migration assistant to migrate my applications and user account to a new laptop. My older laptop had an older version of Xcode that I didn’t want included in the migration and as it is so big, I didn’t want to take the chance.
HTML5 Data attributes in HTML and jQuery
When writing javascript, it is often necessary to include metadata in the HTML markup, to help define some element or behaviour. There are common options available. You can use hidden inputs and/or standard attributes like class
or title
to store this metadata. However with HTML5’s data attribute, storing and parsing this data has become a whole lot easier and cleaner.
The syntax is straightforward. Any attribute prefixed with data-
will be treated as data storage.
<div class="test" data-foo="bar"></div>
jQuery accesses this data like so…
var data = $( 'div.test' ).data( 'foo' ); // returns bar
Support for the data attribute has been added since jQuery version 1.4.3. jQuery’s implementation is smart enough that it can parse the attribute easily and even determine the correct data type used.
What I have found really useful is the fact that the jQuery can parse JSON syntax and return a JSON object. This makes passing data in PHP trivial, using the json_encode method. We also need to use htmlspecialchars method to escape or convert any quotes in the JSON string.
<?php $test = array( 'row' => 1, 'col' => 6, 'color' => 'pink' ); //create array of data you want to pass to jquery $test = json_encode( $test ); //convert array to a JSON string $test = htmlspecialchars( $test, ENT_QUOTES ); //convert any quotes into HTML entities so JSON string behaves as a proper HTML attribute. ?> <div class="test" data-complex="<?php echo $test ; ?>"></div>
The jQuery parses the JSON string like so…
var test = $( 'div.test' ).data( 'complex' ); // returns JSON Object console.log( test.color ); // outputs pink!
Important to note that this method is also backward compatible with older browsers, so there is no excuse not to give it a go!
iWorks 09 DVD installation problems
I’m pretty sure this will help nobody and it’s unlikely I will have the same problem again but just in case…
If you are having difficulty installing iWorks 09 from the DVD, then this is what I went through to finally get it to work.
Continue reading “iWorks 09 DVD installation problems”
Mac mail not sending Gmail email
Infrequently my Mac mail would be rendered incapable of sending email.
It appears the Mac mail client could not connect to the outgoing Gmail SMTP server, smtp.gmail.com
, then after a few hours the connection would be restored automatically.
I assumed that my settings must be fine as they remained constant, it must be a problem on the Gmail servers end, but it was happening too often for that to be plausible.
Find process using port number in Bash
Something that has bugged me recently is that when I go to proxy on a particular port, the port is already in use and I get the following error.
bind: Address already in use
channel_setup_fwd_listener: cannot listen to port: 8090
Could not request local forwarding.
Continue reading “Find process using port number in Bash”