1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
|
What is This
============
The new kate's theme format incompatible with the previously used ``*.kateschema``
and ``*.katehlcolor`` files. Here is a tool aimed to help convert old colors to
the newly used theme files.
Usage
=====
- Make a virtualenv with all dependencies::
$ pipenv install --dev
- Enter the virtualenv::
$ pipenv shell
- Check the help screen::
Usage: kateschema2theme [OPTIONS] [INPUT_FILE]
Options:
-h, --help Show this message and exit.
--version Show the version and exit.
-d, --skip-included Do not write custom colors included from another
syntax files.
-s, --syntax-dir TEXT Specify the directory to search for syntax files. If
given, extra validation going to happen.
- Example *katecolor* file::
$ cat .desktop.katehlcolor
[Highlighting .desktop - Schema Zaufi::dark]
.desktop:Comment=8,ff787775,ff787775,0,1,0,0,,,,---
.desktop:Key=2,ff77aa77,ff77aa77,0,0,0,0,,,,---
.desktop:Language=3,ff4086c0,ff4086c0,1,0,0,0,,,,---
.desktop:Normal Text=0,ffcacaca,ffcacaca,0,0,0,0,,,,---
.desktop:Section=1,ffdaaa66,ffdaaa66,1,0,0,0,,,,---
[KateHLColors]
full schema=false
highlight=.desktop
schema=Zaufi::dark
- Perform the conversion::
$ kateschema2theme .desktop.katehlcolor
{
"custom-styles": {
".desktop": {
"Comment": {
"bold": false,
"italic": true,
"selected-text-color": "#787775",
"strike-through": false,
"text-color": "#787775",
"underline": false
},
"Key": {
"bold": false,
"italic": false,
"selected-text-color": "#77aa77",
"strike-through": false,
"text-color": "#77aa77",
"underline": false
},
"Language": {
"bold": true,
"italic": false,
"selected-text-color": "#4086c0",
"strike-through": false,
"text-color": "#4086c0",
"underline": false
},
"Normal Text": {
"bold": false,
"italic": false,
"selected-text-color": "#cacaca",
"strike-through": false,
"text-color": "#cacaca",
"underline": false
},
"Section": {
"bold": true,
"italic": false,
"selected-text-color": "#daaa66",
"strike-through": false,
"text-color": "#daaa66",
"underline": false
}
}
},
"metadata": {
"name": "Zaufi::dark",
"revision": 1
}
}
- Because the syntax files also may be changed, and some syntax items could
disappear, or some new added. The old theme files may contain unused entries
as well as missed definitions for the newly added items. To address these
possible issues, the ``-s`` option could be used with a path to the syntax
XMLs directory. The conversion tool will validate the items defined in
the old there against actually declared by the corresponding syntax.
Unused items will be discarded from the converted theme::
$ kateschema2theme -s /usr/share/org.kde.syntax-highlighting/syntax very-old.kateschema >/dev/null
…
* The following styles are not used by `CMake` syntax anymore:
Commands │ CMake Variable │ Environment Variable
Builtin CMake Variable │ Properties
Macros │ Third-Party Commands
* The following styles are not defined in the converted `CMake` syntax:
User Function/Macro │ False Special Arg │ Command
Named Args │ Cache Variable Substitution
Internal Name │ CMake Internal Variable
Variable Substitution │ Property
True Special Arg │ Environment Variable Substitution
Builtin Variable │ Standard Environment Variable
Aliased Targets │ @Variable Substitution
…
|