npm install @uiw/codemirror-theme-atomone --save
import { EditorState } from '@codemirror/state';
import { javascript } from '@codemirror/lang-javascript';
import { atomone } from '@uiw/codemirror-theme-atomone';
const state = EditorState.create({
doc: 'my source code',
extensions: [atomone, javascript({ jsx: true })],
});
Using in React:
import { tags as t } from '@lezer/highlight';
import { atomone, atomoneInit } from '@uiw/codemirror-theme-atomone';
<CodeMirror theme={atomone} />
<CodeMirror
theme={atomoneInit({
settings: {
caret: '#c6c6c6',
fontFamily: 'monospace',
},
styles: [
{ tag: t.comment, color: '#6272a4' },
]
})}
/>
import { CreateThemeOptions } from '@uiw/codemirror-themes';
export declare const defaultSettingsAtomone: CreateThemeOptions['settings'];
export declare const atomoneInit: (options?: Partial<CreateThemeOptions>) => import('@codemirror/state').Extension;
export declare const atomone: import('@codemirror/state').Extension;
import CodeMirror from '@uiw/react-codemirror';
import { atomone } from '@uiw/codemirror-theme-atomone';
import { javascript } from '@codemirror/lang-javascript';
function App() {
return (
<CodeMirror
value="console.log('hello world!');"
height="200px"
theme={atomone}
extensions={[javascript({ jsx: true })]}
onChange={(value, viewUpdate) => {
console.log('value:', value);
}}
/>
);
}
export default App;
import { EditorView } from '@codemirror/view';
import { EditorState } from '@codemirror/state';
import { javascript } from '@codemirror/lang-javascript';
import { atomone } from '@uiw/codemirror-theme-atomone';
const state = EditorState.create({
doc: 'my source code',
extensions: [atomone, javascript({ jsx: true })],
});
const view = new EditorView({
parent: document.querySelector('#editor'),
state,
});
As always, thanks to our amazing contributors!
Made with github-action-contributors.
Licensed under the MIT License.