Force.com Developer Console: STRING_TOO_LONG

I was working feverishly to fix a large VF page at a company offsite in Bermuda.  Trouble in paradise, because while programming with a Mai Tai in hand is soothing, the internet connection was flaky.  My Force IDE project kept timing out.  Then Eclipse informed me that the project was corrupted. Agh!

That’s okay, I only had to make a couple of changes so the Force.com Developer Console, the browser based tool, would be fine.  I made the updates, hit save… STRING_TOO_LONG.  Wha…???

string-too-long

I had surpassed the limit of the Force.com Developer Console.  This is a known issue.

My numbers were as follows:  84KB, 1947 lines, 1023 lines of JavaScript, 57 lines of CSS.  I had to reduce the VF page to less than 50KB.

The solution was to split out most of the JavaScript into a separate file, put it into Salesforce as a static resource.  I was also able to pull some CSS into a static resource.  Then include a reference to them in the VF:

<apex:includeScript value="{!URLFOR($Resource.myJS)}" />
<apex:stylesheet value="{!URLFOR($Resource.myCSS)}" />

This, and a few other changes got the page down to around 40KB, and I was finally able to save the VF page.

However, if I had given it a little more thought I would have seen a simpler answer.  According to the link above, I could edit and save using the simple editor in Setup->Develop->Pages-> <the page> -> Edit.  It was only a couple of quick changes, so I should have gone this route instead.  The Force IDE is richly featured.  The Developer Console gains more features all the time.  However, there is still the option of a simple editor, the Salesforce equivalent of Notepad (or Notepad++, BBEdit, et al).