Skip to content

New Highlight connected #196

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion example/lib/01.minimal/main.dart
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@

import 'package:flutter/material.dart';
import 'package:flutter_code_editor/flutter_code_editor.dart';
import 'package:flutter_highlight/themes/monokai-sublime.dart';
import 'package:highlight/languages/java.dart';
import 'package:highlight/themes/monokai-sublime.dart';

import '../common/snippets.dart';

Expand Down
2 changes: 1 addition & 1 deletion example/lib/02.code_field/main.dart
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@

import 'package:flutter/material.dart';
import 'package:flutter_code_editor/flutter_code_editor.dart';
import 'package:flutter_highlight/themes/monokai-sublime.dart';
import 'package:highlight/languages/java.dart';
import 'package:highlight/themes/monokai-sublime.dart';

import '../common/snippets.dart';

Expand Down
2 changes: 1 addition & 1 deletion example/lib/03.change_language_theme/home_screen.dart
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import '../common/themes.dart';
import 'constants.dart';
import 'widgets/dropdown_selector.dart';

const _defaultLanguage = 'dart';
const _defaultLanguage = 'python';
const _defaultTheme = 'monokai-sublime';

const _defaultAnalyzer = DefaultLocalAnalyzer();
Expand Down
125 changes: 1 addition & 124 deletions example/lib/common/themes.dart
Original file line number Diff line number Diff line change
@@ -1,93 +1,4 @@
import 'package:flutter_highlight/themes/a11y-dark.dart';
import 'package:flutter_highlight/themes/a11y-light.dart';
import 'package:flutter_highlight/themes/agate.dart';
import 'package:flutter_highlight/themes/an-old-hope.dart';
import 'package:flutter_highlight/themes/androidstudio.dart';
import 'package:flutter_highlight/themes/arduino-light.dart';
import 'package:flutter_highlight/themes/arta.dart';
import 'package:flutter_highlight/themes/ascetic.dart';
import 'package:flutter_highlight/themes/atelier-cave-dark.dart';
import 'package:flutter_highlight/themes/atelier-cave-light.dart';
import 'package:flutter_highlight/themes/atelier-dune-dark.dart';
import 'package:flutter_highlight/themes/atelier-dune-light.dart';
import 'package:flutter_highlight/themes/atelier-estuary-dark.dart';
import 'package:flutter_highlight/themes/atelier-estuary-light.dart';
import 'package:flutter_highlight/themes/atelier-forest-dark.dart';
import 'package:flutter_highlight/themes/atelier-forest-light.dart';
import 'package:flutter_highlight/themes/atelier-heath-dark.dart';
import 'package:flutter_highlight/themes/atelier-heath-light.dart';
import 'package:flutter_highlight/themes/atelier-lakeside-dark.dart';
import 'package:flutter_highlight/themes/atelier-lakeside-light.dart';
import 'package:flutter_highlight/themes/atelier-plateau-dark.dart';
import 'package:flutter_highlight/themes/atelier-plateau-light.dart';
import 'package:flutter_highlight/themes/atelier-savanna-dark.dart';
import 'package:flutter_highlight/themes/atelier-savanna-light.dart';
import 'package:flutter_highlight/themes/atelier-seaside-dark.dart';
import 'package:flutter_highlight/themes/atelier-seaside-light.dart';
import 'package:flutter_highlight/themes/atelier-sulphurpool-dark.dart';
import 'package:flutter_highlight/themes/atelier-sulphurpool-light.dart';
import 'package:flutter_highlight/themes/atom-one-dark-reasonable.dart';
import 'package:flutter_highlight/themes/atom-one-dark.dart';
import 'package:flutter_highlight/themes/atom-one-light.dart';
import 'package:flutter_highlight/themes/brown-paper.dart';
import 'package:flutter_highlight/themes/codepen-embed.dart';
import 'package:flutter_highlight/themes/color-brewer.dart';
import 'package:flutter_highlight/themes/darcula.dart';
import 'package:flutter_highlight/themes/dark.dart';
import 'package:flutter_highlight/themes/default.dart';
import 'package:flutter_highlight/themes/docco.dart';
import 'package:flutter_highlight/themes/dracula.dart';
import 'package:flutter_highlight/themes/far.dart';
import 'package:flutter_highlight/themes/foundation.dart';
import 'package:flutter_highlight/themes/github-gist.dart';
import 'package:flutter_highlight/themes/github.dart';
import 'package:flutter_highlight/themes/gml.dart';
import 'package:flutter_highlight/themes/googlecode.dart';
import 'package:flutter_highlight/themes/gradient-dark.dart';
import 'package:flutter_highlight/themes/grayscale.dart';
import 'package:flutter_highlight/themes/gruvbox-dark.dart';
import 'package:flutter_highlight/themes/gruvbox-light.dart';
import 'package:flutter_highlight/themes/hopscotch.dart';
import 'package:flutter_highlight/themes/hybrid.dart';
import 'package:flutter_highlight/themes/idea.dart';
import 'package:flutter_highlight/themes/ir-black.dart';
import 'package:flutter_highlight/themes/isbl-editor-dark.dart';
import 'package:flutter_highlight/themes/isbl-editor-light.dart';
import 'package:flutter_highlight/themes/kimbie.dark.dart';
import 'package:flutter_highlight/themes/kimbie.light.dart';
import 'package:flutter_highlight/themes/lightfair.dart';
import 'package:flutter_highlight/themes/magula.dart';
import 'package:flutter_highlight/themes/mono-blue.dart';
import 'package:flutter_highlight/themes/monokai-sublime.dart';
import 'package:flutter_highlight/themes/monokai.dart';
import 'package:flutter_highlight/themes/night-owl.dart';
import 'package:flutter_highlight/themes/nord.dart';
import 'package:flutter_highlight/themes/obsidian.dart';
import 'package:flutter_highlight/themes/ocean.dart';
import 'package:flutter_highlight/themes/paraiso-dark.dart';
import 'package:flutter_highlight/themes/paraiso-light.dart';
import 'package:flutter_highlight/themes/pojoaque.dart';
import 'package:flutter_highlight/themes/purebasic.dart';
import 'package:flutter_highlight/themes/qtcreator_dark.dart';
import 'package:flutter_highlight/themes/qtcreator_light.dart';
import 'package:flutter_highlight/themes/railscasts.dart';
import 'package:flutter_highlight/themes/rainbow.dart';
import 'package:flutter_highlight/themes/routeros.dart';
import 'package:flutter_highlight/themes/school-book.dart';
import 'package:flutter_highlight/themes/shades-of-purple.dart';
import 'package:flutter_highlight/themes/solarized-dark.dart';
import 'package:flutter_highlight/themes/solarized-light.dart';
import 'package:flutter_highlight/themes/sunburst.dart';
import 'package:flutter_highlight/themes/tomorrow-night-blue.dart';
import 'package:flutter_highlight/themes/tomorrow-night-bright.dart';
import 'package:flutter_highlight/themes/tomorrow-night-eighties.dart';
import 'package:flutter_highlight/themes/tomorrow-night.dart';
import 'package:flutter_highlight/themes/tomorrow.dart';
import 'package:flutter_highlight/themes/vs.dart';
import 'package:flutter_highlight/themes/vs2015.dart';
import 'package:flutter_highlight/themes/xcode.dart';
import 'package:flutter_highlight/themes/xt256.dart';
import 'package:flutter_highlight/themes/zenburn.dart';
import 'package:highlight/highlight_themes.dart';

const themes = {
'a11y-dark': a11yDarkTheme,
Expand All @@ -98,48 +9,22 @@ const themes = {
'arduino-light': arduinoLightTheme,
'arta': artaTheme,
'ascetic': asceticTheme,
'atelier-cave-dark': atelierCaveDarkTheme,
'atelier-cave-light': atelierCaveLightTheme,
'atelier-dune-dark': atelierDuneDarkTheme,
'atelier-dune-light': atelierDuneLightTheme,
'atelier-estuary-dark': atelierEstuaryDarkTheme,
'atelier-estuary-light': atelierEstuaryLightTheme,
'atelier-forest-dark': atelierForestDarkTheme,
'atelier-forest-light': atelierForestLightTheme,
'atelier-heath-dark': atelierHeathDarkTheme,
'atelier-heath-light': atelierHeathLightTheme,
'atelier-lakeside-dark': atelierLakesideDarkTheme,
'atelier-lakeside-light': atelierLakesideLightTheme,
'atelier-plateau-dark': atelierPlateauDarkTheme,
'atelier-plateau-light': atelierPlateauLightTheme,
'atelier-savanna-dark': atelierSavannaDarkTheme,
'atelier-savanna-light': atelierSavannaLightTheme,
'atelier-seaside-dark': atelierSeasideDarkTheme,
'atelier-seaside-light': atelierSeasideLightTheme,
'atelier-sulphurpool-dark': atelierSulphurpoolDarkTheme,
'atelier-sulphurpool-light': atelierSulphurpoolLightTheme,
'atom-one-dark-reasonable': atomOneDarkReasonableTheme,
'atom-one-dark': atomOneDarkTheme,
'atom-one-light': atomOneLightTheme,
'brown-paper': brownPaperTheme,
'codepen-embed': codepenEmbedTheme,
'color-brewer': colorBrewerTheme,
'darcula': darculaTheme,
'dark': darkTheme,
'default': defaultTheme,
'docco': doccoTheme,
'dracula': draculaTheme,
'far': farTheme,
'foundation': foundationTheme,
'github-gist': githubGistTheme,
'github': githubTheme,
'gml': gmlTheme,
'googlecode': googlecodeTheme,
'gradient-dark': gradientDarkTheme,
'grayscale': grayscaleTheme,
'gruvbox-dark': gruvboxDarkTheme,
'gruvbox-light': gruvboxLightTheme,
'hopscotch': hopscotchTheme,
'hybrid': hybridTheme,
'idea': ideaTheme,
'ir-black': irBlackTheme,
Expand All @@ -155,29 +40,21 @@ const themes = {
'night-owl': nightOwlTheme,
'nord': nordTheme,
'obsidian': obsidianTheme,
'ocean': oceanTheme,
'paraiso-dark': paraisoDarkTheme,
'paraiso-light': paraisoLightTheme,
'pojoaque': pojoaqueTheme,
'purebasic': purebasicTheme,
'qtcreator_dark': qtcreatorDarkTheme,
'qtcreator_light': qtcreatorLightTheme,
'railscasts': railscastsTheme,
'rainbow': rainbowTheme,
'routeros': routerosTheme,
'school-book': schoolBookTheme,
'shades-of-purple': shadesOfPurpleTheme,
'solarized-dark': solarizedDarkTheme,
'solarized-light': solarizedLightTheme,
'sunburst': sunburstTheme,
'tomorrow-night-blue': tomorrowNightBlueTheme,
'tomorrow-night-bright': tomorrowNightBrightTheme,
'tomorrow-night-eighties': tomorrowNightEightiesTheme,
'tomorrow-night': tomorrowNightTheme,
'tomorrow': tomorrowTheme,
'vs': vsTheme,
'vs2015': vs2015Theme,
'xcode': xcodeTheme,
'xt256': xt256Theme,
'zenburn': zenburnTheme,
};
7 changes: 5 additions & 2 deletions example/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,12 @@ environment:
dependencies:
flutter: { sdk: flutter }
flutter_code_editor: { path: ../ }
flutter_highlight: ^0.7.0
highlight: ^0.7.0
http: ^0.13.5
highlight:
git:
url: https://github.com/yescorp/highlight.dart.git
ref: 4e75ac3cca4539add6dc53b93bdcb61b9af06fa1
path: highlight/

dev_dependencies:
flutter_test: { sdk: flutter }
Expand Down
2 changes: 1 addition & 1 deletion lib/src/code/code.dart
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ class Code {
namedSections: sectionsMap,
visibleHighlighted:
hiddenRanges.cutHighlighted(highlighted)?.splitLines(),
visibleText: hiddenRanges.cutString(text),
visibleText: text,
visibleSectionNames: visibleSectionNames,
);
}
Expand Down
2 changes: 1 addition & 1 deletion lib/src/folding/parsers/java.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import 'package:highlight/highlight.dart';
import 'package:highlight/highlight_core.dart';

import '../../../flutter_code_editor.dart';
import '../../code/code_lines.dart';
Expand Down
7 changes: 3 additions & 4 deletions lib/src/hidden_ranges/hidden_ranges.dart
Original file line number Diff line number Diff line change
Expand Up @@ -138,19 +138,18 @@ class HiddenRanges {
Node cutHighlightedNode(Node node) {
final value = cutHighlightedString(node.value);
final children =
node.children?.map(cutHighlightedNode).toList(growable: false);
node.children.map(cutHighlightedNode).toList(growable: false);

return Node(
className: node.className,
value: value,
children: children,
noPrefix: node.noPrefix,
);
)..children = children;
}

final nodes =
highlighted.nodes?.map(cutHighlightedNode).toList(growable: false) ??
const <Node>[];
<Node>[];

return Result(
relevance: highlighted.relevance,
Expand Down
3 changes: 1 addition & 2 deletions lib/src/highlight/node.dart
Original file line number Diff line number Diff line change
Expand Up @@ -97,8 +97,7 @@ extension MyNode on Node {
className: className ?? this.className,
value: value ?? this.value,
noPrefix: noPrefix ?? this.noPrefix,
children: children ?? this.children,
);
)..children = children ?? this.children;
}

extension NodeListExtension on List<Node> {
Expand Down
7 changes: 5 additions & 2 deletions pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,18 @@ dependencies:
collection: ^1.16.0
equatable: ^2.0.5
flutter: { sdk: flutter }
flutter_highlight: ^0.7.0
highlight: ^0.7.0
http: ^0.13.5
linked_scroll_controller: ^0.2.0
meta: ^1.7.0
mocktail: ^0.3.0
scrollable_positioned_list: ^0.3.5
tuple: ^2.0.1
url_launcher: ^6.1.8
highlight:
git:
url: https://github.com/yescorp/highlight.dart.git
ref: 4e75ac3cca4539add6dc53b93bdcb61b9af06fa1
path: highlight/

dev_dependencies:
fake_async: ^1.3.1
Expand Down
2 changes: 1 addition & 1 deletion test/src/code/code_get_edit_result_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import 'package:flutter_code_editor/src/code/code.dart';
import 'package:flutter_code_editor/src/code/code_edit_result.dart';
import 'package:flutter_code_editor/src/named_sections/parsers/brackets_start_end.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:highlight/highlight.dart';
import 'package:highlight/highlight_core.dart';
import 'package:highlight/languages/java.dart';

const _languageName = 'java';
Expand Down
2 changes: 1 addition & 1 deletion test/src/code/code_hidden_ranges_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import 'package:flutter_code_editor/src/hidden_ranges/hidden_range.dart';
import 'package:flutter_code_editor/src/hidden_ranges/hidden_ranges.dart';
import 'package:flutter_code_editor/src/named_sections/parsers/brackets_start_end.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:highlight/highlight.dart';
import 'package:highlight/highlight_core.dart';
import 'package:highlight/languages/java.dart';

final _language = java;
Expand Down
2 changes: 1 addition & 1 deletion test/src/code_field/split_highlight_lines_test.dart
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import 'package:flutter_code_editor/src/highlight/node.dart';
import 'package:flutter_code_editor/src/highlight/result.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:highlight/highlight.dart';
import 'package:highlight/highlight_core.dart';
import 'package:highlight/languages/dart.dart';

const examples = {
Expand Down
2 changes: 1 addition & 1 deletion test/src/common/create_app.dart
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import 'package:flutter/material.dart';
import 'package:flutter_code_editor/flutter_code_editor.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:highlight/highlight.dart';
import 'package:highlight/highlight_core.dart';
import 'package:highlight/languages/java.dart';

FocusNode focusNode = FocusNode();
Expand Down
2 changes: 1 addition & 1 deletion test/src/folding/parsers/java_parser_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import 'package:flutter_code_editor/src/service_comment_filter/service_comment_f
import 'package:flutter_code_editor/src/single_line_comments/parser/single_line_comment_parser.dart';
import 'package:flutter_code_editor/src/single_line_comments/parser/single_line_comments.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:highlight/highlight.dart';
import 'package:highlight/highlight_core.dart';
import 'package:highlight/languages/java.dart';

void main() {
Expand Down
2 changes: 1 addition & 1 deletion test/src/hidden_ranges/hidden_ranges_test.dart
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import 'package:flutter_code_editor/src/hidden_ranges/hidden_range.dart';
import 'package:flutter_code_editor/src/hidden_ranges/hidden_ranges.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:highlight/highlight.dart';
import 'package:highlight/highlight_core.dart';

const _text = '''
public class MyClass {
Expand Down