4.23.10 • Published 3 months ago

@uiw/codemirror-extensions-classname v4.23.10

Weekly downloads
-
License
MIT
Repository
github
Last release
3 months ago

Add className Extensions

Buy me a coffee npm version

Adding a class for a specific line for CodeMirror6.

Add className Extensions

Install

npm install @uiw/codemirror-extensions-classname --save

Usage

import CodeMirror from '@uiw/react-codemirror';
import { classname } from '@uiw/codemirror-extensions-classname';

const themeDemo = EditorView.baseTheme({
  '&dark .first-line': { backgroundColor: 'red' },
  '&light .first-line': { backgroundColor: 'red' },
  '&dark .line-color': { backgroundColor: 'blue' },
  '&light .line-color': { backgroundColor: 'blue' },
});

function App() {
  const classnameExt = classname({
    add: (lineNumber) => {
      if (lineNumber === 1) {
        return 'first-line';
      }
      if (lineNumber === 5) {
        return 'line-color';
      }
    },
  });
  return <CodeMirror value="" height="200px" extensions={[theme, classnameExt]} />;
}

export default App;
import CodeMirror from '@uiw/react-codemirror';
import { classname } from '@uiw/codemirror-extensions-classname';

function App() {
  const classnameExt = classname({
    add: (lineNumber) => {
      if (lineNumber === 1) {
        return 'first-line';
      }
      if (lineNumber === 5) {
        return 'line-color';
      }
    },
  });
  return <CodeMirror value="" height="200px" extensions={[classnameExt]} />;
}
export default App;
import { EditorView } from '@codemirror/view';
import { EditorState } from '@codemirror/state';
import { classname } from '@uiw/codemirror-extensions-classname';

const classnameExt = classname({
  add: (lineNumber) => {
    if (lineNumber === 1) {
      return 'first-line';
    }
    if (lineNumber === 5) {
      return 'line-color';
    }
  },
});

const state = EditorState.create({
  doc: 'my source code',
  extensions: [classnameExt],
});

const view = new EditorView({
  parent: document.querySelector('#editor'),
  state,
});

API

import { Extension } from '@codemirror/state';
export declare type ClassnameOptions = {
  add?: (lineNumber: number) => string | undefined;
};
export declare function classname(options?: ClassnameOptions): Extension;

Contributors

As always, thanks to our amazing contributors!

Made with github-action-contributors.

License

Licensed under the MIT License.

4.23.10

3 months ago

4.23.8

4 months ago

4.23.9

4 months ago

4.23.7

6 months ago

4.23.6

8 months ago

4.23.4

8 months ago

4.23.5

8 months ago

4.23.1

9 months ago

4.23.2

9 months ago

4.23.3

9 months ago

4.23.0

11 months ago

4.22.2

1 year ago

4.22.1

1 year ago

4.22.0

1 year ago

4.21.25

1 year ago

4.21.24

1 year ago

4.21.23

1 year ago

4.21.22

1 year ago

4.21.11

2 years ago

4.21.10

2 years ago

4.21.13

2 years ago

4.21.12

2 years ago

4.21.19

2 years ago

4.21.18

2 years ago

4.21.15

2 years ago

4.21.14

2 years ago

4.21.17

2 years ago

4.21.16

2 years ago

4.21.9

2 years ago

4.21.8

2 years ago

4.21.21

2 years ago

4.21.20

2 years ago

4.21.6

2 years ago

4.21.7

2 years ago

4.21.4

2 years ago

4.21.5

2 years ago

4.21.1

2 years ago

4.20.2

2 years ago

4.21.2

2 years ago

4.20.3

2 years ago

4.21.3

2 years ago

4.20.4

2 years ago

4.20.0

2 years ago

4.21.0

2 years ago

4.20.1

2 years ago

4.19.14

2 years ago

4.19.13

2 years ago

4.19.12

2 years ago

4.19.11

2 years ago

4.19.10

2 years ago

4.19.16

2 years ago

4.19.15

2 years ago

4.19.8

2 years ago

4.19.9

2 years ago

4.19.5

2 years ago

4.19.6

2 years ago

4.19.7

2 years ago

4.19.4

2 years ago

4.19.3

2 years ago