<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:series="http://organizeseries.com/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>BC Design» Blog</title>
	
	<link>http://www.brycecorkins.com</link>
	<description>Solving problems, since 2001</description>
	<lastBuildDate>Wed, 14 Nov 2012 19:04:29 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/BryceCorkins" /><feedburner:info uri="brycecorkins" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Synchro Genesis</title>
		<link>http://feedproxy.google.com/~r/BryceCorkins/~3/EGZIR7C_N0A/</link>
		<comments>http://www.brycecorkins.com/blog/2012/synchro-genesis/#comments</comments>
		<pubDate>Wed, 14 Nov 2012 19:03:27 +0000</pubDate>
		<dc:creator>Bryce Corkins</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Recommended]]></category>

		<guid isPermaLink="false">http://www.brycecorkins.com/?p=2092</guid>
		<description><![CDATA[Shameless self promotion: I&#8217;m close friends with some of the core team members of the Synchro Genesis product launch campaign. Synchro is awesome. It&#8217;s a protein shake / meal replacement / energy drink. The main idea is: instead of drinking caffeine [...]]]></description>
				<content:encoded><![CDATA[<p><strong>Shameless self promotion:</strong></p>
<p>I&#8217;m close friends with some of the core team members of the Synchro Genesis product launch campaign. Synchro is <em>awesome</em>. It&#8217;s a protein shake / meal replacement / energy drink. The main idea is: instead of drinking caffeine and sugar, which will inevitably wear off and leave you feeling shitty&#8230; why not start your day with something that&#8217;s actually good for you? Synchro wakes you up and invigorates you, but because the energy comes from protein, you don&#8217;t crash later&#8211; you don&#8217;t develop a tolerance, you don&#8217;t feel like crap when it wears off, and if you need a boost in the afternoon&#8230; just take some more!</p>
<p><img class="alignleft size-thumbnail wp-image-2094" title="image-1_1024x1024_large" src="http://www.brycecorkins.com/wp-content/uploads/2012/11/image-1_1024x1024_large1-130x130.jpg" alt="" width="130" height="130" /></p>
<p>&nbsp;</p>
<p>This is a <a href="http://vlt.me/.aysv">unique tracking link to our Indiegogo campaign</a>. We&#8217;re trying to raise enough startup capital to begin large-scale commercial production of Synchro. If you have a minute, check out the product&#8230; and by clicking the link above, I get to show my support of Synchro by sending them traffic.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.brycecorkins.com/blog/2012/synchro-genesis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.brycecorkins.com/blog/2012/synchro-genesis/</feedburner:origLink></item>
		<item>
		<title>The definitive method to highlight an array of search terms using PHP and preg_replace</title>
		<link>http://feedproxy.google.com/~r/BryceCorkins/~3/qmZajN76z4c/</link>
		<comments>http://www.brycecorkins.com/blog/2012/the-definitive-method-to-highlight-an-array-of-search-terms-using-php-and-preg_replace/#comments</comments>
		<pubDate>Wed, 29 Aug 2012 03:57:44 +0000</pubDate>
		<dc:creator>Bryce Corkins</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[preg_replace]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://www.brycecorkins.com/?p=2076</guid>
		<description><![CDATA[I came across this problem while working on the WP Ultimate Search plugin. Here&#8217;s the code we were using initially: private function highlightsearchterms&#40;$text,$keywords&#41;&#123; &#160;foreach&#40;$keywords as $keyword&#41; &#123; &#160; $text = preg_replace&#40;&#39;#&#39; . $keyword . &#39;#iu&#39;, &#39;&#60;strong class=&#34;usearch-highlight&#34;&#62;$0&#60;/strong&#62;&#39;, $text&#41;; &#160;&#125; &#160;return [...]]]></description>
				<content:encoded><![CDATA[<p>I came across this problem while working on the <a href="http://ultimatesearch.mindsharelabs.com" target="_blank">WP Ultimate Search</a> plugin. Here&#8217;s the code we were using initially:</p>
<div class="geshi no php">
<ol>
<li class="li1">
<div class="de1"><span class="kw2">private</span> <span class="kw2">function</span> highlightsearchterms<span class="br0">&#40;</span><span class="re1">$text</span><span class="sy0">,</span><span class="re1">$keywords</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">foreach</span><span class="br0">&#40;</span><span class="re1">$keywords</span> <span class="kw1">as</span> <span class="re1">$keyword</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re1">$text</span> <span class="sy0">=</span> <span class="kw3">preg_replace</span><span class="br0">&#40;</span><span class="st0">&#39;#&#39;</span> <span class="sy0">.</span> <span class="re1">$keyword</span> <span class="sy0">.</span> <span class="st0">&#39;#iu&#39;</span><span class="sy0">,</span> <span class="st0">&#39;&lt;strong class=&quot;usearch-highlight&quot;&gt;$0&lt;/strong&gt;&#39;</span><span class="sy0">,</span> <span class="re1">$text</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">return</span> <span class="re1">$text</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
</ol>
</div>
<p>This works fine, <em>except</em> when someone adds the words &#8220;search&#8221; or &#8220;highlight&#8221; as additional keywords to a search that already has results. At that point, the preg_replace would go through and highlight the class name within the <code>&lt;strong&gt;</code> tag, since the HTML matched the search query. We needed to figure out how to do the entire preg_replace in one operation, without iterating for each element of the $keywords array.</p>
<p>It took almost an hour of searching to hack together a solution. Doesn&#8217;t seem like any one else has come up with a way to do it all on one line. So here it is.:</p>
<div class="geshi no php">
<ol>
<li class="li1">
<div class="de1"><span class="kw2">private</span> <span class="kw2">function</span> highlightsearchterms<span class="br0">&#40;</span><span class="re1">$text</span><span class="sy0">,</span><span class="re1">$keywords</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">return</span> <span class="kw3">preg_replace</span><span class="br0">&#40;</span><span class="st0">&#39;/(&#39;</span> <span class="sy0">.</span> <span class="kw3">implode</span><span class="br0">&#40;</span><span class="st0">&#39;|&#39;</span><span class="sy0">,</span> <span class="re1">$keywords</span><span class="br0">&#41;</span> <span class="sy0">.</span> <span class="st0">&#39;)/i&#39;</span><span class="sy0">,</span> <span class="st0">&#39;&lt;strong class=&quot;usearch-highlight&quot;&gt;$0&lt;/strong&gt;&#39;</span><span class="sy0">,</span> <span class="re1">$text</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
</ol>
</div>
<p>Elegant, fast, and solved the problem. The <code>/i</code> flag tells preg_replace to ignore case. You can leave it in or take it out.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.brycecorkins.com/blog/2012/the-definitive-method-to-highlight-an-array-of-search-terms-using-php-and-preg_replace/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.brycecorkins.com/blog/2012/the-definitive-method-to-highlight-an-array-of-search-terms-using-php-and-preg_replace/</feedburner:origLink></item>
		<item>
		<title>Lines of code in WordPress</title>
		<link>http://feedproxy.google.com/~r/BryceCorkins/~3/DzwF7arbLSo/</link>
		<comments>http://www.brycecorkins.com/blog/2012/lines-of-code-in-wordpress/#comments</comments>
		<pubDate>Sat, 04 Aug 2012 19:11:13 +0000</pubDate>
		<dc:creator>Bryce Corkins</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.brycecorkins.com/?p=2064</guid>
		<description><![CDATA[There are 150,000 lines of code in WordPress The King James Bible has just shy of 80,000 lines of text Hamlet has only 4,000.]]></description>
				<content:encoded><![CDATA[<p>There are <a href="http://www.ohloh.net/p/wordpress/analyses/latest">150,000 lines of code in WordPress</a></p>
<p>The King James Bible has just shy of 80,000 lines of text</p>
<p>Hamlet has only 4,000.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.brycecorkins.com/blog/2012/lines-of-code-in-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.brycecorkins.com/blog/2012/lines-of-code-in-wordpress/</feedburner:origLink></item>
		<item>
		<title>WP Ultimate Search</title>
		<link>http://feedproxy.google.com/~r/BryceCorkins/~3/2_jbizlBIHw/</link>
		<comments>http://www.brycecorkins.com/blog/2012/wp-ultimate-search/#comments</comments>
		<pubDate>Thu, 02 Aug 2012 17:00:06 +0000</pubDate>
		<dc:creator>Bryce Corkins</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[facet]]></category>
		<category><![CDATA[faceting]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wp-ultimate-search]]></category>

		<guid isPermaLink="false">http://www.brycecorkins.com/?p=2061</guid>
		<description><![CDATA[Check out my newest plugin&#8230; WP Ultimate Search. It&#8217;s the first ever ajax-enabled faceted search plugin for WordPress. Right now it can only facet by category, but when we launch the premium version there will be an interface where you [...]]]></description>
				<content:encoded><![CDATA[<p>Check out my newest plugin&#8230; <a href="http://ultimatesearch.mindsharelabs.com/">WP Ultimate Search</a>. It&#8217;s the first ever ajax-enabled faceted search plugin for WordPress. Right now it can only facet by category, but when we launch the premium version there will be an interface where you can enable faceting by any custom taxonomy, post meta data, or <a href="http://www.advancedcustomfields.com">(advanced) custom field</a>.</p>
<h4>Features:</h4>
<ul>
<li>Searches post title and body content</li>
<li>Can search by multiple keywords, and by full phrases</li>
<li>Highlights search terms in results</li>
<li>Searches inside of shortcodes</li>
<li>Option to send search queries as events to your Google Analytics account</li>
<li>Facets by post category</li>
<li>Can search in multiple categories (OR search)</li>
<li>Category options are dynamically generated and autocompleted as you type</li>
<li>Attractive and lightweight interface based on jQuery, Backbone.js, and the VisualSearch.js library</li>
<li>Bypasses WordPress’ built-in search functions and conducts direct database queries for low overhead and high flexibility</li>
</ul>
<h4>Try a demo:</h4>
<p>Search with plain text, or begin typing &#8220;category&#8221; to facet by categories: (my site&#8217;s especially overloaded these days, so results may be slow, but this isn&#8217;t the norm)</p>
<p>
<div id="search_box_container"></div>
</p>
<p><div id="search_query"></div>
<div id="usearch_response">&nbsp;</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.brycecorkins.com/blog/2012/wp-ultimate-search/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.brycecorkins.com/blog/2012/wp-ultimate-search/</feedburner:origLink></item>
		<item>
		<title>How to include a custom stylesheet on a WordPress options page</title>
		<link>http://feedproxy.google.com/~r/BryceCorkins/~3/GYFZz0qVjVo/</link>
		<comments>http://www.brycecorkins.com/blog/2012/how-to-include-a-custom-stylesheet-on-a-wordpress-options-page/#comments</comments>
		<pubDate>Thu, 02 Aug 2012 11:06:25 +0000</pubDate>
		<dc:creator>Bryce Corkins</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Rants]]></category>
		<category><![CDATA[class]]></category>
		<category><![CDATA[include]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wp_enqueue_style]]></category>

		<guid isPermaLink="false">http://www.brycecorkins.com/?p=2054</guid>
		<description><![CDATA[(or, &#8220;how to put a bunch of error messages in a blog post for effortless traffic&#8221;) Let&#8217;s start with what doesn&#8217;t work, beginning with including the options page file itself: If you&#8217;re defining a base URL for your includes, for [...]]]></description>
				<content:encoded><![CDATA[<p>(or, &#8220;how to put a bunch of error messages in a blog post for effortless traffic&#8221;)</p>
<p>Let&#8217;s start with what doesn&#8217;t work, beginning with including the options page file itself:</p>
<p>If you&#8217;re defining a base URL for your includes, for example <code>define('PLUGIN_BASE', plugin_dir_url( __FILE__ ));</code>, you won&#8217;t run into any problems enqueuing scripts and stylesheets.<br />
<code>wp_enqueue_style( 'plugin-style', PLUGIN_BASE. 'css/plugin-style.css');</code> will work fine.<br />
But don&#8217;t think about trying to <code>include( PLUGIN_BASE . 'plugin-options.php');</code>, you&#8217;ll get a friendly:<br />
<code><strong>Warning: include() [function.include]: URL file-access is disabled in the server configuration</strong></code><br />
(It seems like <code>include( 'plugin-options.php');</code> works, but I don&#8217;t think it&#8217;s the best way to go about it).</p>
<p>If we were suspicious of <code>PLUGIN_BASE</code> before, we&#8217;ll quickly progress to dismay and anger once we try to use it in plugin-options.php. A simple call to <code>wp_enqueue_style( 'options-style', PLUGIN_BASE. 'css/options-style.css');</code> gives us this bizzarre error in the console:</p>
<p><code>Failed to load resource: the server responded with a status of 404 (Not Found) http://mystagingsite.mysite.com/wp-content/plugins/http://mystagingsite.mysite.com/wp-content/plugins/my-plugin/css/options-style.css?ver=3.4.1<br />
</code></p>
<p>Ok, so maybe the <code>PLUGIN_BASE</code> constant isn&#8217;t valid inside of a different class, or something. Let&#8217;s forget the definition and just put <code>plugin_dir_url( __FILE__ )</code> there instead.</p>
<p>Nope.</p>
<p><code>plugin_dir_path(__FILE__)</code>?<br />
Nope.<br />
<code>dirname(__FILE__)</code>?<br />
Nope.<br />
<code>trailingslashit( dirname( $file ) )</code>?<br />
Nope.<br />
<code>plugin_dir_url( $file )</code>?<br />
Nope.<br />
<code>plugin_basename(__FILE__)</code>?<br />
Nope.<br />
<code>realpath( dirname( __FILE__ ) )</code>?<br />
Nope.<br />
<code>basename(dirname(__FILE__))</code>?<br />
Nope.</p>
<p>What eventually ended up working, though I still couldn&#8217;t tell you why, is <code>wp_enqueue_style( 'options-style', plugins_url('/options-style.css', __FILE__) );</code></p>
<p>So if you got here with any of those errors above, I hope this has helped you out.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.brycecorkins.com/blog/2012/how-to-include-a-custom-stylesheet-on-a-wordpress-options-page/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.brycecorkins.com/blog/2012/how-to-include-a-custom-stylesheet-on-a-wordpress-options-page/</feedburner:origLink></item>
		<item>
		<title>Upgrading Mountain Lion to a bigger hard drive</title>
		<link>http://feedproxy.google.com/~r/BryceCorkins/~3/LK4z0EAXGM8/</link>
		<comments>http://www.brycecorkins.com/blog/2012/upgrading-mountain-lion-to-a-bigger-hard-drive/#comments</comments>
		<pubDate>Sat, 28 Jul 2012 20:24:43 +0000</pubDate>
		<dc:creator>Bryce Corkins</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[hard drive]]></category>
		<category><![CDATA[mountain lion]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[recovery hd]]></category>
		<category><![CDATA[upgrade]]></category>

		<guid isPermaLink="false">http://www.brycecorkins.com/?p=2049</guid>
		<description><![CDATA[I just purchased a Seagate Momentus XT 750GB hard drive to replace my aging Hitachi 320GB drive that came with my Macbook Pro. (It&#8217;s a lot faster&#8230; I don&#8217;t know why I didn&#8217;t do this a long time ago.) Normally I&#8217;m [...]]]></description>
				<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-2050" title="HardDriveIconX_90x90" src="http://www.brycecorkins.com/wp-content/uploads/2012/07/HardDriveIconX_90x90.png" alt="" width="90" height="90" />I just purchased a <a href="http://www.amazon.com/gp/product/B00691WMJG/ref=as_li_tf_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=B00691WMJG&amp;linkCode=as2&amp;tag=bcde-20">Seagate Momentus XT 750GB</a><img style="border: none !important; margin: 0px !important;" src="http://www.assoc-amazon.com/e/ir?t=bcde-20&amp;l=as2&amp;o=1&amp;a=B00691WMJG" alt="" width="1" height="1" border="0" /> hard drive to replace my aging Hitachi 320GB drive that came with my Macbook Pro. (It&#8217;s a <em>lot</em> faster&#8230; I don&#8217;t know why I didn&#8217;t do this a long time ago.) Normally I&#8217;m used to simply mirroring the old drive onto the new one during an upgrade, but with OSX Lion and later, <a href="http://blog.macsales.com/11552-hard-drive-upgrades-with-lion-not-just-a-simple-clone-anymore">Apple installs a hidden Recovery HD partition</a>.This hidden partition is essential for running OSX, and will be lost if you use disk utility to do a direct copy of the old drive. Here&#8217;s how I upgraded to a new drive, step by step:</p>
<ol>
<li>Plugged the new drive into a USB port using a <a href="http://www.amazon.com/gp/product/B000UO6C5S/ref=as_li_qf_sp_asin_tl?ie=UTF8&amp;camp=1789&amp;creative=9325&amp;creativeASIN=B000UO6C5S&amp;linkCode=as2&amp;tag=bcde-20">Cables To Go USB drive adapter</a><img style="border: none !important; margin: 0px !important;" src="http://www.assoc-amazon.com/e/ir?t=bcde-20&amp;l=as2&amp;o=1&amp;a=B000UO6C5S" alt="" width="1" height="1" border="0" /> (there&#8217;s probably a faster way to do this, but it&#8217;s what I had on hand).</li>
<li>Opened Disk Utility and partitioned the drive into two partitions: one 60gb NTFS (compressed) partition for my Bootcamp install, and the rest as a journaled HFS+ partition called &#8220;Macintosh HD&#8221;</li>
<li>Opened <a href="http://www.bombich.com/">Carbon Copy Cloner</a>, opened the Disk Center, and selected the new Macintosh HD partition on the new drive. Click the Recovery HD tab and click &#8220;Create a Recovery partition for this volume.&#8221; This will automatically create an appropriately sized Recovery HD, and copy over the existing Recovery HD from your current system. Carbon Copy Cloner was the only tool I could find that supported copying this hidden drive easily— neither Apple&#8217;s Disk Utility, or Drive Genius 3 supported copying the recovery drive.</li>
<li>Back in the Cloning Console, select your current internal Macintosh HD as the source drive, and the new Macintosh HD as the destination drive. Click &#8220;clone.&#8221; Carbon Copy will clone your existing drive, and update the recovery partition if necessary.</li>
<li>(Optional) I then cloned my current Bootcamp partition onto the new bootcamp partition on the new drive.</li>
<li>Physically remove the old drive, install the new one, and boot.</li>
</ol>
<p>Everything should be there, and you&#8217;ve saved yourself from having to reinstall Mountain Lion and do a migration!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.brycecorkins.com/blog/2012/upgrading-mountain-lion-to-a-bigger-hard-drive/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.brycecorkins.com/blog/2012/upgrading-mountain-lion-to-a-bigger-hard-drive/</feedburner:origLink></item>
		<item>
		<title>Cheat Sheet for the WordPress bundle in TextMate</title>
		<link>http://feedproxy.google.com/~r/BryceCorkins/~3/2sFdvV3QUao/</link>
		<comments>http://www.brycecorkins.com/blog/2012/cheat-sheet-for-the-wordpress-bundle-in-textmate/#comments</comments>
		<pubDate>Sat, 14 Jul 2012 00:01:56 +0000</pubDate>
		<dc:creator>Bryce Corkins</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[reference]]></category>
		<category><![CDATA[shortcode]]></category>
		<category><![CDATA[textmate]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.brycecorkins.com/?p=2038</guid>
		<description><![CDATA[There wasn&#8217;t one of these already, so I made one. Based on the WordPress TextMate Bundle by Shawn Parker &#38; Top Frog Graphics.]]></description>
				<content:encoded><![CDATA[<p>There wasn&#8217;t one of these already, so I made one. Based on the <a href="http://top-frog.com/projects/wordpress-textmate-bundle/">WordPress TextMate Bundle</a> by Shawn Parker &amp; Top Frog Graphics.</p>
<p><div class="gde-error">GDE Error: Unable to load profile settings</div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.brycecorkins.com/blog/2012/cheat-sheet-for-the-wordpress-bundle-in-textmate/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.brycecorkins.com/blog/2012/cheat-sheet-for-the-wordpress-bundle-in-textmate/</feedburner:origLink></item>
		<item>
		<title>jQuery Notify</title>
		<link>http://feedproxy.google.com/~r/BryceCorkins/~3/SObKGqza0fQ/</link>
		<comments>http://www.brycecorkins.com/blog/2012/jquery-notify/#comments</comments>
		<pubDate>Wed, 11 Jul 2012 04:17:33 +0000</pubDate>
		<dc:creator>Bryce Corkins</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.brycecorkins.com/?p=2033</guid>
		<description><![CDATA[I released my first WordPress plugin yesterday, jQuery Notify. It&#8217;s a lightweight and highly configurable jQuery notification pane that will appear after a page loads. It can be inserted into a page or post by either using a shortcode or [...]]]></description>
				<content:encoded><![CDATA[<p>I released my first WordPress plugin yesterday, <a href="http://jquery-notify.mindsharelabs.com/">jQuery Notify</a>. It&#8217;s a lightweight and highly configurable jQuery notification pane that will appear after a page loads. It can be inserted into a page or post by either using a shortcode or template tag, and is smart enough to only load on pages it&#8217;s needed on.</p>
<p>I created this as an opportunity to learn more about WordPress&#8217; action/hook/filter system for <a href="http://2012.albuquerque.wordcamp.org/session/hooked-on-actions/" title="Hooked on Actions">my upcoming presentation</a> at <a href="http://2012.albuquerque.wordcamp.org/" title="Wordcamp 2012">Wordcamp 2012</a>. The entire plugin is wrapped in a class to avoid variable/function naming conflicts, and it only loads on pages where the shortcode is actually called. All styles and scripts are registered through <code>wp_enqueue_script</code> and <code>wp_enqueue_style</code>, and data is passed between the plugin and the scripts using the <code>localize_script</code> function.</p>
<p>Check out a <a href="http://jquery-notify.mindsharelabs.com/">demo</a> of the plugin, or <a href="http://wordpress.org/extend/plugins/jquery-notify/">install it on your own site</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.brycecorkins.com/blog/2012/jquery-notify/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.brycecorkins.com/blog/2012/jquery-notify/</feedburner:origLink></item>
		<item>
		<title>jQuery .fadeIn() opacity bug in Chrome and IE 8</title>
		<link>http://feedproxy.google.com/~r/BryceCorkins/~3/m47vqpfRxx0/</link>
		<comments>http://www.brycecorkins.com/blog/2012/jquery-fadein-opacity-bug-in-chrome-and-ie-8/#comments</comments>
		<pubDate>Sun, 08 Jul 2012 19:13:57 +0000</pubDate>
		<dc:creator>Bryce Corkins</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[web design]]></category>

		<guid isPermaLink="false">http://www.brycecorkins.com/?p=2012</guid>
		<description><![CDATA[I kept encountering this strange glitch in Chrome when using jQuery&#8217;s .fadeIn() effect on a text element. The text would fade in properly, but then flicker to a slightly bolder weight. The text wasn&#8217;t bold, so I couldn&#8217;t figure out [...]]]></description>
				<content:encoded><![CDATA[<p>I kept encountering this strange glitch in Chrome when using jQuery&#8217;s .fadeIn() effect on a text element. The text would fade in properly, but then flicker to a slightly bolder weight. The text wasn&#8217;t bold, so I couldn&#8217;t figure out what was going on.</p>
<p>It turns out that in IE 8 (and lower) and in Chrome on some operating systems, the text loses its ClearType while fading, and then has ClearType activated once it&#8217;s fully faded in. This causes a distracting jitter. Thankfully there is an easy fix. Add the following to the CSS selector for the text element:</p>
<div class="geshi no css">
<ol>
<li class="li1">
<div class="de1">opacity<span class="re2">:<span class="nu0">0</span></span><span class="re1">.<span class="nu0">99</span></span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">filter<span class="re2">:alpha</span><span class="br0">&#40;</span>opacity=<span class="nu0">99</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
</ol>
</div>
<p>This will make the element fade in to only 99%, thus preventing ClearType from engaging, and smoothing out the transition.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.brycecorkins.com/blog/2012/jquery-fadein-opacity-bug-in-chrome-and-ie-8/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://www.brycecorkins.com/blog/2012/jquery-fadein-opacity-bug-in-chrome-and-ie-8/</feedburner:origLink></item>
		<item>
		<title>Moving bookmarks from Cyberduck to Transmit</title>
		<link>http://feedproxy.google.com/~r/BryceCorkins/~3/NzOMF2zDLNg/</link>
		<comments>http://www.brycecorkins.com/blog/2012/moving-bookmarks-from-cyberduck-to-transmit/#comments</comments>
		<pubDate>Tue, 12 Jun 2012 18:27:22 +0000</pubDate>
		<dc:creator>Bryce Corkins</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[bookmarks]]></category>
		<category><![CDATA[cyberduck]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[transmit]]></category>

		<guid isPermaLink="false">http://www.brycecorkins.com/?p=1989</guid>
		<description><![CDATA[Transmit has an &#8220;Import from Cyberduck&#8230;&#8221; option, but it seems to be unable to recognize the .duck files that Cyberduck uses to store its bookmarks. I found this bash script on a German blog, so I thought I&#8217;d repost it [...]]]></description>
				<content:encoded><![CDATA[<p>Transmit has an &#8220;Import from Cyberduck&#8230;&#8221; option, but it seems to be unable to recognize the .duck files that Cyberduck uses to store its bookmarks. I found this bash script on a German blog, so I thought I&#8217;d repost it here for convenience sake. The script iterates through all of the bookmarks in the Cyberduck bookmarks directory, and generates a .plist file which Transmit can import. Worked perfectly for me. Good luck.</p>
<div class="geshi no bash">
<div class="head">#!/bin/bash</div>
<ol>
<li class="li1">
<div class="de1"><span class="kw3">echo</span> <span class="st0">&#39;&lt; ?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st0">&lt; !DOCTYPE plist PUBLIC &quot;-//Apple//DTD PLIST 1.0//EN&quot; &quot;http://www.apple.com/DTDs/PropertyList-1.0.dtd&quot;&gt;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st0">&lt;plist version=&quot;1.0&quot;&gt;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st0">&lt;array&gt;&#39;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">shopt</span> -s nullglob</div>
</li>
<li class="li1">
<div class="de1"><span class="re2">DIRECTORY=</span>~<span class="sy0">/</span>Library<span class="sy0">/</span>Application\ Support<span class="sy0">/</span>Cyberduck<span class="sy0">/</span>Bookmarks<span class="sy0">/</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">cd</span> <span class="st0">&quot;$DIRECTORY&quot;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">for</span> <span class="kw2">file</span> <span class="kw1">in</span> <span class="sy0">*</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">do</span> <span class="kw2">sed</span> -ne <span class="st0">&#39;/dict/,/<span class="es0">\/</span>dict/p&#39;</span> <span class="st0">&quot;$file&quot;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">done</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">echo</span> <span class="st0">&#39;&lt;/array&gt;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st0">&lt;/plist&gt;&#39;</span></div>
</li>
</ol>
</div>
<p>Save the file (cyberduck2transmit.sh, for example), and then make the script executable with</p>
<div class="geshi no bash">
<ol>
<li class="li1">
<div class="de1">$ <span class="kw2">chmod</span> a+rwx .<span class="sy0">/</span>cyberduck2transmit.<span class="kw2">sh</span></div>
</li>
</ol>
</div>
<p>And then run it with</p>
<div class="geshi no bash">
<ol>
<li class="li1">
<div class="de1">$ .<span class="sy0">/</span>cyberduck2transmit.<span class="kw2">sh</span> <span class="sy0">&gt;</span> cyberduck_bookmarks.plist</div>
</li>
</ol>
</div>
<p>This will generate a .plist file which you can happily import into Transmit.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.brycecorkins.com/blog/2012/moving-bookmarks-from-cyberduck-to-transmit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.brycecorkins.com/blog/2012/moving-bookmarks-from-cyberduck-to-transmit/</feedburner:origLink></item>
	</channel>
</rss>
