bibtex-language.ts 632 B

12345678910111213141516171819202122
  1. import { indentNodeProp, LRLanguage } from '@codemirror/language'
  2. import { parser } from '../../lezer-bibtex/bibtex.mjs'
  3. import { bibtexEntryCompletions } from './completions/snippets'
  4. export const BibTeXLanguage = LRLanguage.define({
  5. name: 'bibtex',
  6. parser: parser.configure({
  7. props: [
  8. // Disable the autoindent from delimited nodes
  9. indentNodeProp.add({
  10. EntryBody: () => null,
  11. StringBody: () => null,
  12. PreambleBody: () => null,
  13. CommentBody: () => null,
  14. StringLiteral: () => null,
  15. }),
  16. ],
  17. }),
  18. languageData: {
  19. autocomplete: bibtexEntryCompletions,
  20. },
  21. })