cullmann (Christoph Cullmann)
User

Projects

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Friday

  • Clear sailing ahead.

User Details

User Since
Jul 30 2015, 8:46 PM (128 w, 6 d)
Availability
Available

Recent Activity

Sat, Jan 13

cullmann committed R241:edf79981b447: fix compile on macOS (missing SOCK_NONBLOCK) (authored by cullmann).
fix compile on macOS (missing SOCK_NONBLOCK)
Sat, Jan 13, 8:47 PM
cullmann closed D9867: Fix compile fail on macOS.
Sat, Jan 13, 8:47 PM · Frameworks
cullmann committed R283:2cc7abc7f615: Fix linking regression introduced by (authored by cullmann).
Fix linking regression introduced by
Sat, Jan 13, 8:24 PM

Tue, Jan 9

cullmann added a comment to D9750: ExpandingWidgetModel: find the right-most column based on location.

;=) I assume then a KDevelop person must try it.

Tue, Jan 9, 8:22 AM · Frameworks, Kate
cullmann accepted D9749: Simplify code: return early to reduce indentation depth.
Tue, Jan 9, 8:21 AM · Frameworks, Kate

Sat, Jan 6

cullmann committed R6:90858efa8c60: avoid crash in kactivities if no dbus connection is available (authored by cullmann).
avoid crash in kactivities if no dbus connection is available
Sat, Jan 6, 11:19 PM
cullmann closed D9703: Allow applications using KActivities to not crash even if no dbus server is around.
Sat, Jan 6, 11:19 PM · Frameworks

Fri, Dec 22

cullmann committed R40:e0850455361c: allow to run current document in konsole (authored by ederag).
allow to run current document in konsole
Fri, Dec 22, 5:13 PM
cullmann closed D9244: Run in terminal.
Fri, Dec 22, 5:13 PM · Kate
cullmann added a comment to D9244: Run in terminal.

If someone come up with a better solution, I'm ready to continue,

otherwise, ready to go ?
I think this is good enough ATM, lets see what people think of it.

Fri, Dec 22, 8:38 AM · Kate

Wed, Dec 20

cullmann committed R40:49648b92693d: support git worktree checkouts (authored by cullmann).
support git worktree checkouts
Wed, Dec 20, 8:48 PM
cullmann committed R39:5abb34a1fc6f: port to non-deprecated API like already used at other place (authored by cullmann).
port to non-deprecated API like already used at other place
Wed, Dec 20, 7:48 PM
cullmann committed R40:4903dc5cdb80: allow to switch to a file with enter (authored by cullmann).
allow to switch to a file with enter
Wed, Dec 20, 7:31 PM
cullmann added a comment to D9244: Run in terminal.

Ok, thanks.
And please add yourself to the copyright headers, I will need full name + email anyways for the commit.
Thanks!

Wed, Dec 20, 10:00 AM · Kate
cullmann added a comment to D9244: Run in terminal.

Thanks you very much for the very enlightening feedback.

I assume I shall apply the patch and push?

Thanks, but please hold on, because

I don't remember we do any isValid() check inside ktexteditor anyways ;)

made me search through the kate project code, and indeed, the few other
places .isValid() is called for an url
make more sense, like

if (url.isValid()) {
        KIO::DeleteJob *job = KIO::del(url);

Reading the QUrl doc helped too. It is mainly about encoding.
But the document url has been checked, on opening the document,
so how could it be invalid ?
So I do agree now with one of your first statements:
remove this block altogether.

http://doc.qt.io/qt-5/qurl.html#isLocalFile
is a bit puzzling, as samba files are considered "local", with an example there
http://doc.qt.io/qt-5/qurl.html#toLocalFile
but this is a corner case; the command might just fail (or not), no big deal.

Then I'm not sure we should really check for isLocalFile either.
Here is a potential use case :
myscript <file url>
where myscript would download the file url and run it locally.

Any objection to remove this one too ?
(Not all work lost, since it will be useful to improve KateConsole::slotSync)

If you would remove that, you would first need to write code that does the download via KIO and stuff.
I think that would be overkill, normally you want to work with a local file.
Just let that check be like it is.

Wed, Dec 20, 7:21 AM · Kate

Dec 18 2017

cullmann accepted D9244: Run in terminal.

To me it still makes sense (shorter code, simpler to maintain, for the very unlikely event)
It would have been nice to explain why (documentation ?) you are so confident
that a file without any valid url
has for sure a valid display (for the error message) nonetheless.

Dec 18 2017, 8:09 PM · Kate
cullmann accepted D9393: MessageInterface: Add CenterInView as additional position.
Dec 18 2017, 11:03 AM · Frameworks, Kate
cullmann added a comment to D9393: MessageInterface: Add CenterInView as additional position.

The 5 as size is still bit strange, but as we have no end enum value, which we don't want to be BC, I guess that is no issue.

Dec 18 2017, 11:03 AM · Frameworks, Kate
cullmann added a comment to D9257: MessageInterface: Add CenterInView as additional position.

I like the code better with the array ;=)
I would use the enum values instead of 5 or 2, otherwise this is fine for me.

Dec 18 2017, 8:53 AM · Frameworks, Kate
cullmann added a comment to D9244: Run in terminal.

But then a "Not a local file" error could be shown, when it is actually the url that would be invalid.
So it was left aside; or please clarify ?

I think that would be just fine enough.
A non-valid URL is no local file (and I doubt somebody will ever get one, beside "no" url).
But I can live with two different messages, as long as both are inline via KTextEditor::Message, it makes no sense that one is a messagebox.

Dec 18 2017, 7:24 AM · Kate

Dec 12 2017

cullmann added a comment to D9244: Run in terminal.

Because I thought that if the url itself was invalid, then things were probably really bad, and it was safer not to rely on the visibility of the document ?

I think the best is to skip that and just warn if no local file, we don't care why it is no one ;=)

Dec 12 2017, 2:01 PM · Kate
cullmann added a comment to D9244: Run in terminal.

Intermediate variables like document render the code much cleaner.
Are they OK ?

Dec 12 2017, 11:51 AM · Kate

Dec 11 2017

cullmann accepted D9283: Fix build with Qt < 5.7.

Ok, thanks for fixing the compile!

Dec 11 2017, 6:52 AM · Kate
cullmann added a comment to D9244: Run in terminal.

For the error message: Two different errors would be nice.

Btw., you could use the ktexteditor/message.h to show the error message inline in the view, that will make it easier to spot.

This also would avoid sending any "#### ..." on the command line.

But I would appreciate some pointers there;
right now only the 4.x documentation shows up:
https://api.kde.org/4.x-api/kdelibs-apidocs/interfaces/ktexteditor/html/classKTextEditor_1_1Message.html
https://api.kde.org/4.x-api/kdelibs-apidocs/interfaces/ktexteditor/html/classKTextEditor_1_1MessageInterface.htm

Dec 11 2017, 6:52 AM · Kate

Dec 10 2017

cullmann added a comment to T7527: Make Konqueror respect privacy by default or replace by Falcon..

Hi, just found this task (after the announcement on community list).

Dec 10 2017, 10:47 AM · Goal settings 2017
cullmann added a comment to D9244: Run in terminal.

For the error message: Two different errors would be nice.

Dec 10 2017, 10:43 AM · Kate
cullmann added a comment to D8371: Support for underscores in numeric literals (Python 3.6).
In D8371#178009, @januz wrote:

b) an extended unit test would be nice, to really show that the regex are right.

Hi, sure. Is there any documentation on how to make those tests? I noticed there are some ref and input files, do I just modify those and run the tests?

Dec 10 2017, 10:40 AM · Framework: Syntax Highlighting, Frameworks

Dec 8 2017

cullmann added a comment to D9175: Migrate some more QRegExps to QRegularExpression.

For the QLatin1String on the right side in some contructors: should it not be always QStringLiteral? Not that it will matter a lot.

Dec 8 2017, 6:06 PM · Frameworks, Kate
cullmann added a comment to D8371: Support for underscores in numeric literals (Python 3.6).

Hi,
I assume the regex are right ;=)

Dec 8 2017, 6:02 PM · Framework: Syntax Highlighting, Frameworks
cullmann added a comment to D9244: Run in terminal.

In principle I have no problem with this extension.
For the code: Could you change KateConsole::slotRun() to report some more meaningful error like "can only run local files".
And do we perhaps want some info message that hints that you should save your file if it has unsaved changes?

Dec 8 2017, 6:00 PM · Kate
cullmann requested changes to D9219: WIP: Extend Scripting API.

I think that extension idea is good.
The functions won't really fit to document or view and an editor object could be used for other global things, too, without further polluting the global namespace with free functions.

Dec 8 2017, 5:57 PM · Frameworks, Kate
cullmann added a comment to D9257: MessageInterface: Add CenterInView as additional position.

For the "KateMessageWidget *m_topMessageWidget" and Co. members: Would it make sense to have just an array of pointers with index == the matching MessagePosition enum value?

Dec 8 2017, 5:52 PM · Frameworks, Kate
cullmann added a comment to D9247: Extend Scripting API to allow executing commands.

Well, the scripting commands are also available on the command line as commands, aren't they? So you could essentially call yourself.

Yeah, that is true, but that is no difference to you are calling yourself indirectly in javascript itself. Perhaps a bit more hidden.

Dec 8 2017, 11:32 AM · Frameworks, Kate
cullmann added a comment to D9247: Extend Scripting API to allow executing commands.

How can we have infinite recursion? By calling a command that triggers again the script function we did call the command in? If that is the only problem, I see no issue, that can happen with normal function calls already, perhaps we could guard chained command calls inside executeCommand, thought (aka guard that not twice the same "command" string arrives via set)

Dec 8 2017, 11:16 AM · Frameworks, Kate

Nov 21 2017

cullmann accepted D7660: Fix a regression caused by changing backspace key behavior.
Nov 21 2017, 7:57 PM · Frameworks
cullmann added a comment to D7660: Fix a regression caused by changing backspace key behavior.

If I don't misread the current diff, all things got done.
Can you commit or shall I do so for you?

Nov 21 2017, 7:57 PM · Frameworks

Nov 19 2017

cullmann added a comment to D4911: add Baloo DBus signals for moved or removed files.

Unfortunately I never finished the https://cgit.kde.org/clones/baloo/cullmann/tbaloo.git/ port :/
Even more unfortunately there are close to zero useful baloo commits either since that time.

Nov 19 2017, 2:19 PM · Frameworks

Nov 16 2017

cullmann committed R40:65293473463b: flake8 as an additional code analysis tool for the Kate Editor Project addon (authored by hectorm).
flake8 as an additional code analysis tool for the Kate Editor Project addon
Nov 16 2017, 4:23 PM
cullmann closed D8335: flake8 as an additional code analysis tool for the Kate Editor Project addon.
Nov 16 2017, 4:23 PM · Kate
cullmann added a comment to D8842: app: Improve --project handling.

;) Yeah, I think the default behavior is ok as it is, you are right.

Nov 16 2017, 1:58 PM
cullmann added a comment to D8842: app: Improve --project handling.

;=) Actually I wanted that kdevelop just opened the project in the current working dir, if any if I start it without arguments ;=)
But --project dir is already nice I assume.

Nov 16 2017, 1:36 PM
cullmann added a comment to D8810: Do not look for kioslave binary in applicationDirPath on *nix (#386859).

I can live with that patch, thought I still think we should just rename the helper, but perhaps that breaks other things if people relied on the name.

Nov 16 2017, 6:52 AM · Frameworks
cullmann accepted D8713: Reuse unmodified empty document instead of closing it.

If that change does the trick for you, feel free to push this.
This avoids any race-conditions we would introduce with the single shot variant.

Nov 16 2017, 6:51 AM · Kate

Nov 14 2017

cullmann added a comment to D8810: Do not look for kioslave binary in applicationDirPath on *nix (#386859).

I can live with that ;=)
But still I think kioslave5 as name would make this not needed and be more in line with kded5/...

Nov 14 2017, 1:08 PM · Frameworks
cullmann added a comment to D8810: Do not look for kioslave binary in applicationDirPath on *nix (#386859).

Doesn't the QStandardPaths call below find it?

No, as that will use searchPaths.

Nov 14 2017, 11:22 AM · Frameworks
cullmann added a comment to D8810: Do not look for kioslave binary in applicationDirPath on *nix (#386859).

Yeah, that was done to be able to provide win/linux install bundles.
Actually would it make not more sense to suffix the kioslave with "5" or something like that like we did for the libs to avoids clashs?

Nov 14 2017, 11:21 AM · Frameworks

Nov 13 2017

cullmann requested changes to D8713: Reuse unmodified empty document instead of closing it.

Please give my idea an try, if you don't find an obvious flaw in it.

Nov 13 2017, 7:59 PM · Kate
cullmann added a comment to D8713: Reuse unmodified empty document instead of closing it.

Hmm, perhaps a different approach would fix the issue:

Nov 13 2017, 7:58 PM · Kate
cullmann accepted D8335: flake8 as an additional code analysis tool for the Kate Editor Project addon.

Feel free to commit.

Nov 13 2017, 7:50 PM · Kate

Nov 12 2017

cullmann added a comment to D5037: KTextEditor: prevent accidental zooming.

Given people seem to have tested this, I would be ok to let it go in now.
I guess we need some "user-test" for it anyways.

Nov 12 2017, 2:47 PM · Frameworks, KTextEditor
cullmann requested changes to D8335: flake8 as an additional code analysis tool for the Kate Editor Project addon.

Nice, makes that plugin more usable for non-C++ things!

Nov 12 2017, 2:40 PM · Kate
cullmann accepted D8710: Fix VI-Mode buffer commands.

The single shots are not that nice, but I understand that they are necessary to defer the action.
Feel free to commit.

Nov 12 2017, 2:37 PM · Frameworks, Kate
cullmann added a comment to D8713: Reuse unmodified empty document instead of closing it.

Hmm, isn't there some potential problem that the next call might use that untitled document again before the event loop call happens and we close it then?
Perhaps a better fix would be to defer the open call in the vi mode?

Nov 12 2017, 2:36 PM · Kate

Nov 6 2017

cullmann accepted R39:631b1447c97f: autotests: Remove dep on Qt5::Script again.

Nice ;=)

Nov 6 2017, 11:30 AM
cullmann added a comment to D8577: Fix: Missing dependencies for ktexeditor autotests.

Could you just remove the problematic includes and try to compile without the dependency, IMHO I see no use of QtScript stuff.

Nov 6 2017, 9:36 AM · Frameworks, Kate
cullmann added a comment to D8577: Fix: Missing dependencies for ktexeditor autotests.

Hmm, I would rather like to have this fixed than having that dependency just for that.
I thought during the port it compiled completely without QtScript.

Nov 6 2017, 7:09 AM · Frameworks, Kate

Nov 2 2017

cullmann added a comment to D8544: KTextEditor : avoiding QML crashes.

I could live with that change.
It at least will avoid random crashs for the time being until we perhaps have a better solution.
Other opinions?

Nov 2 2017, 10:06 AM · Frameworks, Kate, KTextEditor

Oct 31 2017

cullmann added a comment to D8544: KTextEditor : avoiding QML crashes.

In Qt 5.6.0 it was already:

Oct 31 2017, 1:07 PM · Frameworks, Kate, KTextEditor
cullmann added a comment to D8544: KTextEditor : avoiding QML crashes.

Before we got to excessive solutions, I assume you have a build were you can reproduce the crashs.

Oct 31 2017, 12:30 PM · Frameworks, Kate, KTextEditor
cullmann added a comment to D8544: KTextEditor : avoiding QML crashes.

Hi, first: thanks for working on getting the crashs for older versions away.

Oct 31 2017, 11:53 AM · Frameworks, Kate, KTextEditor

Oct 25 2017

cullmann added a comment to D8300: Added the "save selection/cut selection to file" to Edit menu.

In the report, the user wanted some configurable directory.
I don't think this is something more than a few people want and not worth the effort.
The snippet tools stores the snippets in a user local config (if you add some as a user).
This would imho make most sense for me, to have in the snippet plugin some easy way to generate new ones from context menu or such, but I am not sure if there is not already the UI for that, as I never use the snippets stuff.
Perhaps you could just try out, what the snippet plugin provides.

Oct 25 2017, 7:08 AM · Kate

Oct 23 2017

cullmann added a comment to D8300: Added the "save selection/cut selection to file" to Edit menu.

Hi, I am not sure this feature is that important to have.

Oct 23 2017, 11:37 AM · Kate

Oct 17 2017

cullmann accepted D7884: - Increase size of trailing mark.

Then I would say => merge it.
And thanks for the work!

Oct 17 2017, 11:34 AM · Frameworks, Kate

Oct 16 2017

cullmann reopened D8333: fix some indenters from randomly invoking indent.

Thanks for the fix!
Just one thing: could we in addition have an addition indentation test that uses the trigger chars? Its amazing we seem to have none for this as otherwise this problem would have been fixed during the port.

Oct 16 2017, 7:58 PM · Frameworks, Kate

Oct 11 2017

cullmann added a comment to D7660: Fix a regression caused by changing backspace key behavior.

All issues addressed, or?

Oct 11 2017, 11:24 AM · Frameworks
cullmann added a comment to D7884: - Increase size of trailing mark.

Given it seems Atom even has the option to choose the sign for that, we can live with an option I assume (and the code for it is already written anyways).

Oct 11 2017, 11:23 AM · Frameworks, Kate

Sep 24 2017

cullmann added a comment to D7884: - Increase size of trailing mark.

I would rather go with the "make the markers much larger but less contrast" solution than a setting for their size.
Perhaps we really just need to look at how other editors do that.
Eye-cancer like markers are no solution either, but I agree that if people turn them on, they should be able to spot them easily.

Sep 24 2017, 11:42 AM · Frameworks, Kate

Sep 22 2017

cullmann added a comment to D7455: [Feature] Live document preview plugin.

Yes, that is ok.

Sep 22 2017, 1:42 PM
cullmann added a comment to T6859: Falkon - VDG feedback.

Hoi, any feedback on this?

Sep 22 2017, 6:55 AM · Falkon

Sep 19 2017

cullmann added a comment to D7851: Update Signals&Slots of Addons.

I went over the diff, beside the few things not converted I see no obvious faults.
If nobody else objects, I would approve this.

Sep 19 2017, 1:56 PM · Kate

Sep 18 2017

cullmann added a comment to D7497: Fix Ctrl PageUp/PageDown shortcut conflict due to KF 5.37..

I still think we should just apply it, even if we change later again the shortcuts, it doesn't hurt and works around the issue for Kate.

Sep 18 2017, 5:51 AM

Sep 17 2017

cullmann accepted D7455: [Feature] Live document preview plugin.

Given no feedback my temptation now wins over me. So preparing some independent release(s) now for the start.

Good idea.

Sep 17 2017, 12:42 PM
cullmann added a comment to D7245: Improve reStructuredText highlighting.

Hi, please add a testcase and we are done here.
Without a test case this can easily degenerate later again.

Sep 17 2017, 12:36 PM · Frameworks
cullmann added a comment to D7699: Add support for custom search paths for application-specific syntax and theme definitions.

I think you are right, the indexer is an other issue.
We could even just disable that index... files are used by the framework beside for its own internal dirs.

Sep 17 2017, 12:35 PM · Framework: Syntax Highlighting, Frameworks

Sep 15 2017

cullmann accepted D7840: Fix trailing space visualization for RTL lines..

In deed, looks correct now and bogus before.

Sep 15 2017, 2:59 PM · Frameworks, Kate
cullmann added a comment to D7840: Fix trailing space visualization for RTL lines..

Yeah, +1 ;=)
Without screeny, we can't judge.
In any case: thanks for taking care!

Sep 15 2017, 2:54 PM · Frameworks, Kate
cullmann accepted D7827: Syntax indexer: Catch invalid a-Z/A-Z ranges in regexps.

Looks reasonable, one consistency check more is always good!
(hehe, and even found already things)

Sep 15 2017, 7:09 AM · Frameworks

Sep 7 2017

cullmann added a comment to D7699: Add support for custom search paths for application-specific syntax and theme definitions.

Btw, if qrcs overlay, then you can already now overlay org.kde.syntaxhighlighting/syntax and /theme :-)

Sep 7 2017, 8:28 PM · Framework: Syntax Highlighting, Frameworks
cullmann added a comment to D7699: Add support for custom search paths for application-specific syntax and theme definitions.

QRC support is definitely preferred, but that should work with the original proposal indeed. Having just one fixed QRC extension path baked in would be problematic for PIM with its hundreds of libs/components for example, AFAIK QRCs don't overlay on the same path, do they?

Sep 7 2017, 8:16 PM · Framework: Syntax Highlighting, Frameworks

Sep 6 2017

cullmann added a comment to D7699: Add support for custom search paths for application-specific syntax and theme definitions.

That would also be an option. Note, though, that the current patch also would allow that: repository.addCustomSearchPath(":/my-app-resource"); So with this API, you have both, folders on disk, and support for custom resource files.

That is true, the question is if you need that flexibility.
If we just standardize some resources dirs for that, applications need zero api calls and just can package the wanted files in the right dirs and be done.

Sep 6 2017, 8:29 PM · Framework: Syntax Highlighting, Frameworks
cullmann added a comment to D7699: Add support for custom search paths for application-specific syntax and theme definitions.

Hmm, I think the idea is good.

Sep 6 2017, 8:09 PM · Framework: Syntax Highlighting, Frameworks
cullmann added a comment to D7367: Added Intel HEX file support for the Syntax highlighting database.

Should be fixed now:

Sep 6 2017, 6:12 AM · Framework: Syntax Highlighting, Frameworks
cullmann committed R216:fd79b6842c6f: add missing reference files for tests, looks ok, I think (authored by cullmann).
add missing reference files for tests, looks ok, I think
Sep 6 2017, 6:10 AM
cullmann added a comment to D7367: Added Intel HEX file support for the Syntax highlighting database.

I see, the ref file is missing in autotests/reference

Sep 6 2017, 6:05 AM · Framework: Syntax Highlighting, Frameworks

Sep 5 2017

cullmann added a comment to D7367: Added Intel HEX file support for the Syntax highlighting database.

syntax-highlighting.git, on first glance not landed atm.

Sep 5 2017, 8:25 PM · Framework: Syntax Highlighting, Frameworks

Aug 28 2017

cullmann added a comment to T6869: Create ktexteditor-addons repo.

What would be your motivation for this? In other words, what use-cases would that solve for you?

Aug 28 2017, 2:08 PM · Kile, Kate, KDevelop, KTextEditor

Aug 27 2017

cullmann added a comment to T6857: Falkon Incubation.

Hmm, I think it would be needed to e.g. ensure sysadmin has backup of the non-kde infrastructure hosted parts like the website.
And normally one would create a falkon-... mailing list as contact point and a bugzilla falkon product.

Aug 27 2017, 10:16 AM · Falkon

Aug 26 2017

cullmann added a comment to T6869: Create ktexteditor-addons repo.

I would have no problem to move out "all" plugins to some ktexteditor-addons repo.

Aug 26 2017, 9:14 AM · Kile, Kate, KDevelop, KTextEditor
cullmann accepted D7337: Port rest of scripting API to QJSValue-based solution.

Looks ok for me.

Aug 26 2017, 9:11 AM · Frameworks

Aug 24 2017

cullmann created T6859: Falkon - VDG feedback.
Aug 24 2017, 8:18 AM · Falkon
cullmann created T6858: Falkon Translations.
Aug 24 2017, 8:16 AM · Falkon
cullmann created T6857: Falkon Incubation.
Aug 24 2017, 8:09 AM · Falkon
cullmann added a member for Falkon: ervin.
Aug 24 2017, 8:07 AM
cullmann added a member for Falkon: dfaure.
Aug 24 2017, 8:04 AM
cullmann accepted D7497: Fix Ctrl PageUp/PageDown shortcut conflict due to KF 5.37..

Yeah, we want to keep that ;=)

Aug 24 2017, 6:27 AM

Aug 22 2017

cullmann added a comment to D7461: Add syntax highlighting for AppArmor Profiles..

Three things I see ATM:

Aug 22 2017, 10:12 AM · Framework: Syntax Highlighting, Frameworks
cullmann accepted D7459: Use config.h more.

Looks reasonable.

Aug 22 2017, 7:56 AM · Frameworks

Aug 21 2017

cullmann accepted D7367: Added Intel HEX file support for the Syntax highlighting database.

Ok, I am happy with that ;=)

Aug 21 2017, 10:11 PM · Framework: Syntax Highlighting, Frameworks
cullmann added a comment to D7455: [Feature] Live document preview plugin.

Thats kind of cool and given its even only very little code and a plugin I would like to have it, if others don't disagree.

Aug 21 2017, 10:10 PM
cullmann added a comment to D7367: Added Intel HEX file support for the Syntax highlighting database.

Hmm, the diff still looks like it has the old names, perhaps the update went wrong somehow?

Aug 21 2017, 5:39 PM · Framework: Syntax Highlighting, Frameworks