Missing sidebar icons in Sublime Text 3 when using the Soda theme?

If you use Sublime Text 3 with the Soda theme, you’ll notice with the latest ST3 build 3065 (where they added folder icons) it seems to break folder icons in the Soda theme

ST3 without Soda theme (all folder icons showing):

st3-nosoda

ST3 with Soda theme (file icons missing):

st3-soda

Information about this can be found from the following links:

 

But if you’re impatient, just follow the step by step instructions below:

 

1. Download folder icons

Find an icon set that you like (which you can find in the links above). The two that I like are:

 

2. Unzip the icons

When unzipped, what you really want is just the PNG files.  In jbrooksuk’s icons they’re in the root of the archive but in Pryley’s icon set above, they’re in the icons folder.

 

3. Copy icons to your Packages directory

In Sublime Text, go to the menu and pick Sublime Text -> Preferences -> Browse Packages…

st3-packages

Under the User directory, create a directory called /Theme – Soda/icons and in there copy all the PNGs from step 3

st3-icon_packages
 

4. Create the empty .sublime-theme files

In the same /User/Theme – Soda/icons directory, create two empty files

  1. Soda Light 3.sublime-theme
  2. Soda Dark 3.sublime-theme

 

5. Restart Sublime

Once restarted, you should now have file icons in your Sublime Text 3 Theme

st3-soda-fixed

Hiding Chrome’s notification menu bar icon on OS X

I hate seeing my Mac’s menu bar cluttered so every time I update Chrome and see their menu bar icon, the first thing I do is hunt through the chrome://flags to turn it off

chrome-menubar_icon

Looks like the Chrome team have finally listened to it’s users and have now added a switch to turn it off.  Just head to the menu and click Chrome -> Hide Notifications Icon.

chrome-menu

And done – a tidy(er) Mac menu bar :)

chrome-menubar_icon_2

How to fix Dropbox using 100% CPU on OS X

So earlier this morning I noticed that Dropbox was using 100% CPU on my Mac.  Checking the Menu Bar icon I noticed that it was stuck syncing on a single folder.

dropbox
Researching a bit more I found the following things, NONE of  which worked …

In the end I just traversed the subfolders in the “Blue Cottage Software” folder till I found the one it was stuck syncing on, and renamed it.

A quick restart of Dropbox and no more 100% CPU.

The only down side is my MacBook doesn’t run all day with the fans on full blast, which means I now have to find another way to keep myself warm during the winter months.

A Standard set of CocoaPods for a new iOS project

A Standard set of CocoaPods for a new iOS project

One of the side effects of freelancing is that I get a lot of opportunities to write apps from scratch, and as a consequence I notice a lot of patterns when creating new apps.  Most noticeably is that iOS apps in general are pretty similar in their base structure.  E.g. you’ll almost always need a networking layer, some sort of persistent layer to store data, etc

After learning to code in Ruby on Rails last year I’ve become a total convert to CocoaPods (the iOS equivalent to RubyGems), and have found that using pods is the quickest way to make that base structure when creating a new iOS app.

If you’re a freelancer like me, or someone who wants to make an iOS app and are looking for some good foundation libraries to use, I’ve written my collated list of pods below.

 

MagicalRecord

awesome_logo_smallI know some people hate it, but I found this is one of the quickest way to get an app running with core data, and also provide a very nice set of wrappers around it (which I’ve found you’d usually have to write some variant of anyways).

 

AFNetworking

The best networking stack on iOS.  There’s really nothing much else to say.

 

CocoaLumberjack

LumberjackLogoA very handy library for logging output to different locations (e.g. to the console, or to a file, etc), and which you can change based on which environment you’re running in, and what type of log output it is.

 

UIAlertView+Blocks

How often do you write a UIAlertView and just want to use a block to handle the callback for when a button is tapped?

To be honest, I actually prefer UIAlertView-Blocks (note the minus instead of a plus) though the Podspec for UIAlertView-Blocks is a few versions behind the github version and misses some functionality which is available in UIAlertView+Blocks.

 

SVProgressHUD

A library to show an activity indicator which covers the entire view (I still find it strange that this doesn’t come out of the box).

 

UIViewPlusPosition

Actually part of the Moriarty collection of useful iOS classes (though I only use the one class), which allows you to move / resize UIVIews as easily as below:

view.frameY +=5;  // Move a view down 5 pixels
view.frameWidth += 100;  // Increases the view's width by 100 pixels
view.frameBottom = parent.frameBottom - 5;  // Align the view's bottom to the parent view's bottom

 

Masonry

Just like UIViewPlusPosition, except for auto-layout.

 

Reveal-iOS-SDK

icon-largeThe iOS version of FireBug’s DOM inspector.  Not exactly a “pod”, but  I can’t count the number of times I’ve had to lay out a view only to  find it missing when running the app, and then loading up Reveal to see it has been positioned somewhere I would have never found.  Unfortunately it’s paid software, though Shaun is a nice enough guy and deserves a few dollars his way ;)

If you’d like a free solution you can give DCIntrospect-ARC a go (DCIntrospect looks like it’s no longer maintained) though be warned, I’ve found that because it hooks straight into the view hierarchy it sometimes causes weird behaviour in your app.

 

SVWebViewController

I don’t know why but nearly every app that I’ve written requires a UIWebView controller, and this is the best “out of the box” solution I’ve found.

 

And I think that should be it.  If you think there’s anything I missed, or you’d like to make a correctly leave me a note in the comments below :)