Fixed: [ Issue 84 ] Custom options are being considered syntax errors.
https://code.google.com/p/protobuf-dt/issues/detail?id=84

diff --git a/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/contentassist/ProtobufProposalProvider.java b/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/contentassist/ProtobufProposalProvider.java
index fb0a0dc..60a82bc 100644
--- a/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/contentassist/ProtobufProposalProvider.java
+++ b/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/contentassist/ProtobufProposalProvider.java
@@ -70,7 +70,7 @@
     proposeAndAccept(proposal, imageHelper.getImage(images.imageFor(Syntax.class)), context, acceptor);
   }
 
-  @Override public void completeOption_Name(EObject model, Assignment assignment, ContentAssistContext context,
+  @Override public void completeBuiltInOption_Name(EObject model, Assignment assignment, ContentAssistContext context,
       ICompletionProposalAcceptor acceptor) {
     if (proposeOptions(model, context, acceptor)) return;
     if (model instanceof Option) {
@@ -113,9 +113,10 @@
       proposeOption(option, context, acceptor);
   }
 
-  @Override public void completeOption_Value(EObject model, Assignment assignment, ContentAssistContext context,
+  @Override public void completeBuiltInOption_Value(EObject model, Assignment assignment, ContentAssistContext context,
       ICompletionProposalAcceptor acceptor) {
-    Option option = (Option) model;
+    if (!(model instanceof BuiltInOption)) return;
+    BuiltInOption option = (BuiltInOption) model;
     ProtoDescriptor descriptor = descriptorProvider.get();
     Enum enumType = descriptor.enumTypeOf(option);
     if (enumType != null) {
@@ -307,8 +308,8 @@
     return imageHelper.getImage(images.defaultImage());
   }
 
-  @Override public void completeFieldOption_Name(EObject model, Assignment assignment, ContentAssistContext context,
-      ICompletionProposalAcceptor acceptor) {
+  @Override public void completeBuiltInFieldOption_Name(EObject model, Assignment assignment,
+      ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
     Field field = extractFieldFrom(context);
     proposeCommonFieldOptions(field, context, acceptor);
   }
@@ -374,10 +375,10 @@
     acceptor.accept(proposal);
   }
 
-  @Override public void completeFieldOption_Value(EObject model, Assignment assignment, ContentAssistContext context,
-      ICompletionProposalAcceptor acceptor) {
-    if (!(model instanceof FieldOption)) return;
-    FieldOption option = (FieldOption) model;
+  @Override public void completeBuiltInFieldOption_Value(EObject model, Assignment assignment,
+      ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+    if (!(model instanceof BuiltInFieldOption)) return;
+    BuiltInFieldOption option = (BuiltInFieldOption) model;
     if (fieldOptions.isDefaultValueOption(option)) {
       proposeDefaultValue(option, context, acceptor);
       return;