Browse Source

CIF writer fix

David Sehnal 6 years ago
parent
commit
5e60a5b2f7
2 changed files with 4 additions and 4 deletions
  1. 1 1
      src/mol-io/writer/cif/encoder/text.ts
  2. 3 3
      src/mol-state/selection.ts

+ 1 - 1
src/mol-io/writer/cif/encoder/text.ts

@@ -235,7 +235,7 @@ function writeChecked(builder: StringBuilder, val: string) {
     }
 
     const fst = val.charCodeAt(0);
-    if (!escape && (fst === 35 /* # */ || fst === 59 /* ; */ || hasWhitespace)) {
+    if (!escape && (fst === 35 /* # */|| fst === 36 /* $ */ || fst === 59 /* ; */ || fst === 91 /* [ */ || fst === 93 /* ] */ || hasWhitespace)) {
         escapeCharStart = '\'';
         escapeCharEnd = '\' ';
         escape = true;

+ 3 - 3
src/mol-state/selection.ts

@@ -40,13 +40,13 @@ namespace StateSelection {
     }
 
     export interface Builder {
-        flatMap(f: (n: Node) => Node[]): Builder;
-        mapEntity(f: (n: Node) => Node): Builder;
+        flatMap(f: (n: StateObject.Node) => StateObject.Node[]): Builder;
+        mapEntity(f: (n: StateObject.Node) => StateObject.Node): Builder;
         unique(): Builder;
 
         parent(): Builder;
         first(): Builder;
-        filter(p: (n: Node) => boolean): Builder;
+        filter(p: (n: StateObject.Node) => boolean): Builder;
         subtree(): Builder;
         children(): Builder;
         ofType(t: StateObject.Type): Builder;