Skip to content

Commit 9574769

Browse files
committed
Change default language to python for code editor
1 parent 3528c9d commit 9574769

File tree

1 file changed

+57
-56
lines changed

1 file changed

+57
-56
lines changed

apps/frontend/src/components/CollaborativeEditor/CollaborativeEditor.tsx

Lines changed: 57 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -78,63 +78,63 @@ const CollaborativeEditor = forwardRef(
7878
) => {
7979
const editorRef = useRef(null);
8080
// const providerRef = useRef<WebrtcProvider | null>(null);
81-
const [selectedLanguage, setSelectedLanguage] = useState("JavaScript");
81+
const [selectedLanguage, setSelectedLanguage] = useState("Python");
8282
let sessionEndNotified = false;
8383

8484
const languageConf = new Compartment();
8585

8686
// Referenced: https://codemirror.net/examples/config/#dynamic-configuration
87-
const autoLanguage = EditorState.transactionExtender.of((tr) => {
88-
if (!tr.docChanged) return null;
89-
90-
const snippet = tr.newDoc.sliceString(0, 100);
91-
92-
// Handle code change
93-
props.onCodeChange(tr.newDoc.toString());
94-
95-
// Test for various language
96-
const docIsPython = /^\s*(def|class)\s/.test(snippet);
97-
const docIsJava = /^\s*(class|public\s+static\s+void\s+main)\s/.test(
98-
snippet
99-
); // Java has some problems
100-
const docIsCpp = /^\s*(#include|namespace|int\s+main)\s/.test(snippet); // Yet to test c++
101-
const docIsGo = /^(package|import|func|type|var|const)\s/.test(snippet);
102-
103-
let newLanguage;
104-
let languageType;
105-
let languageLabel;
106-
107-
if (docIsPython) {
108-
newLanguage = python();
109-
languageLabel = "Python";
110-
languageType = pythonLanguage;
111-
} else if (docIsJava) {
112-
newLanguage = java();
113-
languageLabel = "Java";
114-
languageType = javaLanguage;
115-
} else if (docIsGo) {
116-
newLanguage = go();
117-
languageLabel = "Go";
118-
languageType = goLanguage;
119-
} else if (docIsCpp) {
120-
newLanguage = cpp();
121-
languageLabel = "C++";
122-
languageType = cppLanguage;
123-
} else {
124-
newLanguage = javascript(); // Default to JavaScript
125-
languageLabel = "JavaScript";
126-
languageType = javascriptLanguage;
127-
}
128-
129-
const stateLanguage = tr.startState.facet(language);
130-
if (languageType == stateLanguage) return null;
131-
132-
setSelectedLanguage(languageLabel);
133-
134-
return {
135-
effects: languageConf.reconfigure(newLanguage),
136-
};
137-
});
87+
// const autoLanguage = EditorState.transactionExtender.of((tr) => {
88+
// if (!tr.docChanged) return null;
89+
90+
// const snippet = tr.newDoc.sliceString(0, 100);
91+
92+
// // Handle code change
93+
// props.onCodeChange(tr.newDoc.toString());
94+
95+
// // Test for various language
96+
// const docIsPython = /^\s*(def|class)\s/.test(snippet);
97+
// const docIsJava = /^\s*(class|public\s+static\s+void\s+main)\s/.test(
98+
// snippet
99+
// ); // Java has some problems
100+
// const docIsCpp = /^\s*(#include|namespace|int\s+main)\s/.test(snippet); // Yet to test c++
101+
// const docIsGo = /^(package|import|func|type|var|const)\s/.test(snippet);
102+
103+
// let newLanguage;
104+
// let languageType;
105+
// let languageLabel;
106+
107+
// if (docIsPython) {
108+
// newLanguage = python();
109+
// languageLabel = "Python";
110+
// languageType = pythonLanguage;
111+
// } else if (docIsJava) {
112+
// newLanguage = java();
113+
// languageLabel = "Java";
114+
// languageType = javaLanguage;
115+
// } else if (docIsGo) {
116+
// newLanguage = go();
117+
// languageLabel = "Go";
118+
// languageType = goLanguage;
119+
// } else if (docIsCpp) {
120+
// newLanguage = cpp();
121+
// languageLabel = "C++";
122+
// languageType = cppLanguage;
123+
// } else {
124+
// newLanguage = javascript(); // Default to JavaScript
125+
// languageLabel = "JavaScript";
126+
// languageType = javascriptLanguage;
127+
// }
128+
129+
// const stateLanguage = tr.startState.facet(language);
130+
// if (languageType == stateLanguage) return null;
131+
132+
// setSelectedLanguage(languageLabel);
133+
134+
// return {
135+
// effects: languageConf.reconfigure(newLanguage),
136+
// };
137+
// });
138138

139139
const [messageApi, contextHolder] = message.useMessage();
140140

@@ -290,8 +290,9 @@ const CollaborativeEditor = forwardRef(
290290
doc: ytext.toString(),
291291
extensions: [
292292
basicSetup,
293-
languageConf.of(javascript()),
294-
autoLanguage,
293+
languageConf.of(python()),
294+
// languageConf.of(javascript()),
295+
// autoLanguage,
295296
yCollab(ytext, provider.awareness, { undoManager }),
296297
],
297298
});
@@ -326,9 +327,9 @@ const CollaborativeEditor = forwardRef(
326327
ref={editorRef}
327328
style={{ height: "400px", border: "1px solid #ddd" }}
328329
/>
329-
<div className="language-detected">
330+
{/* <div className="language-detected">
330331
<strong>Current Language Detected: </strong> {selectedLanguage}
331-
</div>
332+
</div> */}
332333
</>
333334
);
334335
}

0 commit comments

Comments
 (0)