4.22.0 • Published 10 days ago

@uiw/codemirror-extensions-classname v4.22.0

Weekly downloads
-
License
MIT
Repository
github
Last release
10 days 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.22.0

10 days ago

4.21.25

2 months ago

4.21.24

2 months ago

4.21.23

3 months ago

4.21.22

3 months ago

4.21.11

9 months ago

4.21.10

9 months ago

4.21.13

8 months ago

4.21.12

8 months ago

4.21.19

7 months ago

4.21.18

8 months ago

4.21.15

8 months ago

4.21.14

8 months ago

4.21.17

8 months ago

4.21.16

8 months ago

4.21.9

10 months ago

4.21.8

10 months ago

4.21.21

5 months ago

4.21.20

7 months ago

4.21.6

11 months ago

4.21.7

11 months ago

4.21.4

11 months ago

4.21.5

11 months ago

4.21.1

11 months ago

4.20.2

12 months ago

4.21.2

11 months ago

4.20.3

11 months ago

4.21.3

11 months ago

4.20.4

11 months ago

4.20.0

12 months ago

4.21.0

11 months ago

4.20.1

12 months ago

4.19.14

1 year ago

4.19.13

1 year ago

4.19.12

1 year ago

4.19.11

1 year ago

4.19.10

1 year ago

4.19.16

1 year ago

4.19.15

1 year ago

4.19.8

1 year ago

4.19.9

1 year ago

4.19.5

1 year ago

4.19.6

1 year ago

4.19.7

1 year ago

4.19.4

1 year ago

4.19.3

1 year ago