<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.kde.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugs.kde.org/"
          
          maintainer="sysadmin@kde.org"
>

    <bug>
          <bug_id>333608</bug_id>
          
          <creation_ts>2014-04-19 06:46:36 +0000</creation_ts>
          <short_desc>[PATCH] Prolog highlighting marks Swi-Prolog 7.x new dict syntax as warning</short_desc>
          <delta_ts>2014-06-07 13:45:58 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>2</classification_id>
          <classification>Applications</classification>
          <product>kate</product>
          <component>syntax</component>
          <version>Git</version>
          <rep_platform>unspecified</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>NOR</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Raivo Laanemets">info</reporter>
          <assigned_to name="KWrite Developers">kwrite-bugs-null</assigned_to>
          <cc>walter.von.entferndt</cc>
          
          <cf_commitlink>http://commits.kde.org/kate/ab1e932a6d9ea88b2219f23f3a5b0628ba7d5fce</cf_commitlink>
          <cf_versionfixedin>4.14</cf_versionfixedin>
          <cf_sentryurl></cf_sentryurl>
          <votes>0</votes>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1442095</commentid>
    <comment_count>0</comment_count>
    <who name="Raivo Laanemets">info</who>
    <bug_when>2014-04-19 06:46:36 +0000</bug_when>
    <thetext>Swi-Prolog (a rather popular Prolog implementation) uses special syntax involving the dot (.) operator for their new dict feature:
http://swi-prolog.org/pldoc/man?section=dicts

Current Kate&apos;s Prolog highlighter marks such usages of dot as warnings. This makes it harder to see actual warnings.

Reproducible: Always

Steps to Reproduce:
1. Enter p:- (a -&gt; X = Y.c ; true) into a new file.
2. Save file as a Prolog file.
Actual Results:  
Observe that dot in X.c is marked as warning (red background).

Expected Results:  
Dot in X.c should not be marked as a warning.

I have created a patch that removes dot warning markers in the relevant contexts (nested, curly, nested_expr). Nested context: usually inside if-then-else (-&gt;;), curly: inside dicts themself and dcg {} blocks, nested_expr: arithmetic expressions like X is A * (Y.c + 3). I have tested it with some files.

Previously I used a workaround by avoiding the dot operator but recent changes in Swi made that impossible:
http://swi-prolog.996271.n3.nabble.com/Ann-SWI-Prolog-7-1-13-td14825.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1442096</commentid>
    <comment_count>1</comment_count>
      <attachid>86164</attachid>
    <who name="Raivo Laanemets">info</who>
    <bug_when>2014-04-19 06:50:09 +0000</bug_when>
    <thetext>Created attachment 86164
Pathc to remove dot warning in relevant contexts.

Uploading possible patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1444588</commentid>
    <comment_count>2</comment_count>
    <who name="Dominik Haumann">dhaumann</who>
    <bug_when>2014-04-29 18:51:31 +0000</bug_when>
    <thetext>@Raivo: Is there any negative side effect of this patch? Otherwise, we&apos;ll commit this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1445139</commentid>
    <comment_count>3</comment_count>
    <who name="Raivo Laanemets">info</who>
    <bug_when>2014-05-02 09:24:20 +0000</bug_when>
    <thetext>@Dominik: I hoped to get a comment from the original author (added to CC) but that has not happened. This is my first time to modify an highlight file. Someone with a deeper knowledge of highlight definitions should review my patch that it does exactly what it says: removes 3 warning markers. As far as I see it does not touch any other rules or context transitions and thus can&apos;t have negative side effects. I use the patched file on my system and daily work on Prolog projects using Kate, no issues so far.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1448589</commentid>
    <comment_count>4</comment_count>
    <who name="Walter von Entferndt">walter.von.entferndt</who>
    <bug_when>2014-05-15 14:37:00 +0000</bug_when>
    <thetext>answer(Patch) :-
        Patch is ok + well.done;
        commit(Patch).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453776</commentid>
    <comment_count>5</comment_count>
    <who name="Dominik Haumann">dhaumann</who>
    <bug_when>2014-06-07 13:38:25 +0000</bug_when>
    <thetext>Git commit ab1e932a6d9ea88b2219f23f3a5b0628ba7d5fce by Dominik Haumann.
Committed on 07/06/2014 at 13:37.
Pushed by dhaumann into branch &apos;master&apos;.

fix: Prolog highlighting marks Swi-Prolog 7.x new dict syntax as warning

Thanks to Raivo Laanemets for the patch!

M  +1    -4    part/syntax/data/prolog.xml

http://commits.kde.org/kate/ab1e932a6d9ea88b2219f23f3a5b0628ba7d5fce</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453777</commentid>
    <comment_count>6</comment_count>
    <who name="Dominik Haumann">dhaumann</who>
    <bug_when>2014-06-07 13:39:33 +0000</bug_when>
    <thetext>Git commit babe8751b504200a354029216c1250aaf8fc3d3d by Dominik Haumann.
Committed on 07/06/2014 at 13:38.
Pushed by dhaumann into branch &apos;master&apos;.

fix: Prolog highlighting marks Swi-Prolog 7.x new dict syntax as warning

M  +1    -4    src/syntax/data/prolog.xml

http://commits.kde.org/ktexteditor/babe8751b504200a354029216c1250aaf8fc3d3d</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>86164</attachid>
            <date>2014-04-19 06:50:09 +0000</date>
            <delta_ts>2014-04-19 06:50:09 +0000</delta_ts>
            <desc>Pathc to remove dot warning in relevant contexts.</desc>
            <filename>dot_no_warning.patch</filename>
            <type>text/plain</type>
            <size>1724</size>
            <attacher name="Raivo Laanemets">info</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBwYXJ0L3N5bnRheC9kYXRhL3Byb2xvZy54bWwgcGFydC9zeW50YXgvZGF0YS9w
cm9sb2cueG1sCmluZGV4IGU5YWNiNGQuLjFlNzJmNzQgMTAwNjQ0Ci0tLSBwYXJ0L3N5bnRheC9k
YXRhL3Byb2xvZy54bWwKKysrIHBhcnQvc3ludGF4L2RhdGEvcHJvbG9nLnhtbApAQCAtNjU2LDcg
KzY1Niw2IEBAIFRPRE8gc29ydGVkIGJ5IHByaW9yaXR5CiAJCTxEZXRlY3RDaGFyIGNoYXI9IiZj
dXQ7IiBjb250ZXh0PSIjc3RheSIgYXR0cmlidXRlPSJOb3JtYWwgVGV4dCIgLz4KIAkJPERldGVj
dENoYXIgY2hhcj0iJmJhcjsiIGNvbnRleHQ9IiNzdGF5IiBhdHRyaWJ1dGU9Im90aGVyIGJ1aWx0
LWluIG9wZXJhdG9yIiAvPgogCQk8RGV0ZWN0MkNoYXJzIGxvb2tBaGVhZD0idHJ1ZSIgY2hhcj0i
JmRvdDsiIGNoYXIxPSIoIiBjb250ZXh0PSJsaXN0X2Z1bmN0b3IiIGF0dHJpYnV0ZT0iTm9ybWFs
IFRleHQiIC8+Ci0JCTxSZWdFeHByIFN0cmluZz0iJmZ1bGxzdG9wX2lzbzsiIGNvbnRleHQ9IiNz
dGF5IiBhdHRyaWJ1dGU9Ildhcm5pbmcgKCF1c2UgYmFja2dyb3VuZCkiIC8+CiAJCTxJbmNsdWRl
UnVsZXMgY29udGV4dD0iYXRvbWljIiAvPgogCSAgICA8L2NvbnRleHQ+CiAJICAgIDxjb250ZXh0
IG5hbWU9ImN1cmx5IiBsaW5lRW5kQ29udGV4dD0iI3N0YXkiIGF0dHJpYnV0ZT0iU3ludGF4IEVy
cm9yIiBub0luZGVudGF0aW9uQmFzZWRGb2xkaW5nPSJ0cnVlIiA+CkBAIC02NjksNyArNjY4LDYg
QEAgVE9ETyBzb3J0ZWQgYnkgcHJpb3JpdHkKIAkJPERldGVjdENoYXIgY2hhcj0iJmN1dDsiIGNv
bnRleHQ9IiNzdGF5IiBhdHRyaWJ1dGU9IkxvZ2ljICZhbXA7IENvbnRyb2wiIC8+CiAJCTxEZXRl
Y3RDaGFyIGNoYXI9IiZiYXI7IiBjb250ZXh0PSIjc3RheSIgYXR0cmlidXRlPSJOb3JtYWwgVGV4
dCIgLz4KIAkJPERldGVjdDJDaGFycyBsb29rQWhlYWQ9InRydWUiIGNoYXI9IiZkb3Q7IiBjaGFy
MT0iKCIgY29udGV4dD0ibGlzdF9mdW5jdG9yIiBhdHRyaWJ1dGU9Ik5vcm1hbCBUZXh0IiAvPgot
CQk8UmVnRXhwciBTdHJpbmc9IiZmdWxsc3RvcF9pc287IiBjb250ZXh0PSIjc3RheSIgYXR0cmli
dXRlPSJXYXJuaW5nICghdXNlIGJhY2tncm91bmQpIiAvPgogCQk8SW5jbHVkZVJ1bGVzIGNvbnRl
eHQ9ImF0b21pYyIgLz4KIAkgICAgPC9jb250ZXh0PgogCkBAIC03MDIsNyArNzAwLDYgQEAgVE9E
TyBzb3J0ZWQgYnkgcHJpb3JpdHkKIAkJPERldGVjdENoYXIgY2hhcj0iJmNvbW1hOyIgY29udGV4
dD0iI3N0YXkiIGF0dHJpYnV0ZT0iU3ludGF4IEVycm9yIiAvPgogCQk8IS0tIGJhciAmIGRvdCBj
b3VsZCBiZSBhIHVzZXItZGVmJ2Qgb3AsIHByZS1kZWYnZCBvcHMgY291bGQgYmUgcmVkZWYnZDsg
ZWxzZSB0aGVzZSB3ZXJlIGVycm9ycyAtLT4KIAkJPERldGVjdENoYXIgY2hhcj0iJmJhcjsiIGNv
bnRleHQ9IiNzdGF5IiBhdHRyaWJ1dGU9Ik5vcm1hbCBUZXh0IiAvPgotCQk8UmVnRXhwciBTdHJp
bmc9IiZmdWxsc3RvcF9pc287IiBjb250ZXh0PSIjc3RheSIgYXR0cmlidXRlPSJXYXJuaW5nICgh
dXNlIGJhY2tncm91bmQpIiAvPgogCQk8UmVnRXhwciBTdHJpbmc9IiZsb2dpY19jb250cm9sX29w
c19pc287IiBjb250ZXh0PSIjc3RheSIgYXR0cmlidXRlPSJvdGhlciBidWlsdC1pbiBvcGVyYXRv
ciIgLz4KIAkJPEluY2x1ZGVSdWxlcyBjb250ZXh0PSJhcml0aF9leHByX2NvbW1vbiIgLz4KIAkg
ICAgPC9jb250ZXh0Pgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>