[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] master b86ae49 103/135: Fixed parsing of ! in conditions

From: Ian Dunn
Subject: [elpa] master b86ae49 103/135: Fixed parsing of ! in conditions
Date: Mon, 17 Feb 2020 10:53:01 -0500 (EST)

branch: master
commit b86ae49dc7136a9b047fea845ffc2e6e1663b56d
Author: Ian Dunn <address@hidden>
Commit: Ian Dunn <address@hidden>

    Fixed parsing of ! in conditions
    * org-edna.el (org-edna--normalize-sexp-form): Break form before parsing.
    * org-edna-tests.el: Added test for parsing negations
    * org-edna.org (Changelog): Added updates.
 .bzrignore        |   3 +-
 Project.ede       |   4 +-
 org-edna-tests.el |   8 +++
 org-edna.el       |   3 +-
 org-edna.info     | 144 +++++++++++++++++++++++++++++-------------------------
 org-edna.org      |   3 ++
 test.mk           |   4 +-
 7 files changed, 97 insertions(+), 72 deletions(-)

diff --git a/.bzrignore b/.bzrignore
index bbb6def..05318df 100644
--- a/.bzrignore
+++ b/.bzrignore
@@ -3,4 +3,5 @@ local.mk
\ No newline at end of file
\ No newline at end of file
diff --git a/Project.ede b/Project.ede
index decef82..65176dc 100644
--- a/Project.ede
+++ b/Project.ede
@@ -11,9 +11,9 @@
       :source '("org-edna.el")
       :aux-packages '("org"))
-      :name "check"
+      :name #("check" 0 1 (idx 2))
       :path ""
-      :source '("org-edna-tests.el" "org-edna-tests.org")
+      :source '("org-edna-tests.el" "org-edna-tests.org" "test.mk")
       :partofall nil
       :submakefile "test.mk")
     (ede-proj-target-aux "ede-proj-target-aux"
diff --git a/org-edna-tests.el b/org-edna-tests.el
index 6ce4f64..01842ec 100644
--- a/org-edna-tests.el
+++ b/org-edna-tests.el
@@ -154,6 +154,14 @@
+(ert-deftest org-edna-form-to-sexp-negation ()
+  (let* ((input-string "self !done?")
+         (sexp (org-edna-string-form-to-sexp-form input-string 'condition)))
+    (should (equal
+             sexp
+             '(((self)
+                (!done?)))))))
 (ert-deftest org-edna-form-to-sexp-arguments ()
   (let* ((input-string "match(\"checklist\") todo!(TODO)")
          (sexp (org-edna-string-form-to-sexp-form input-string 'action)))
diff --git a/org-edna.el b/org-edna.el
index 947d8f6..a72377b 100644
--- a/org-edna.el
+++ b/org-edna.el
@@ -259,7 +259,8 @@ the remainder of FORM after the current scope was parsed."
            ;; Determine the type of the form
            ;; If we need to change state, return from this scope
-           (pcase-let* ((`(,type . ,func) (org-edna--function-for-key (car 
+           (pcase-let* ((`(_ . ,key)   (org-edna-break-modifier (car 
+                        (`(,type . ,func) (org-edna--function-for-key key)))
              (unless (and type func)
                (org-edna--syntax-error "Unrecognized Form"
                                        from-string error-pos))
diff --git a/org-edna.info b/org-edna.info
index 184755b..25a9421 100644
--- a/org-edna.info
+++ b/org-edna.info
@@ -107,6 +107,7 @@ Contributing
+* 1.0beta6: 10beta6.
 * 1.0beta5: 10beta5.
 * 1.0beta4: 10beta4.
 * 1.0beta3: 10beta3.
@@ -1510,13 +1511,23 @@ Changelog
 * Menu:
+* 1.0beta6: 10beta6.
 * 1.0beta5: 10beta5.
 * 1.0beta4: 10beta4.
 * 1.0beta3: 10beta3.
 * 1.0beta2: 10beta2.
-File: org-edna.info,  Node: 10beta5,  Next: 10beta4,  Up: Changelog
+File: org-edna.info,  Node: 10beta6,  Next: 10beta5,  Up: Changelog
+   • Fixed error reporting
+   • Fixed parsing of negations in conditions
+File: org-edna.info,  Node: 10beta5,  Next: 10beta4,  Prev: 10beta6,  Up: 
@@ -1594,71 +1605,72 @@ Big release here, with three new features.
 Tag Table:
 Node: Top225
-Node: Copying3672
-Node: Introduction4494
-Node: Installation and Setup5442
-Node: Basic Operation6235
-Node: Blockers8086
-Node: Triggers8372
-Node: Syntax8634
-Node: Basic Features9324
-Node: Finders9627
-Node: ancestors11392
-Node: children11986
-Node: descendants12396
-Node: file12918
-Node: first-child13667
-Node: ids13927
-Node: match14588
-Node: next-sibling15226
-Node: next-sibling-wrap15483
-Node: olp15797
-Node: org-file16209
-Node: parent16854
-Node: previous-sibling17052
-Node: previous-sibling-wrap17313
-Node: relatives17592
-Node: rest-of-siblings21213
-Node: rest-of-siblings-wrap21498
-Node: self21847
-Node: siblings22008
-Node: siblings-wrap22245
-Node: Actions22549
-Node: Scheduled/Deadline23291
-Node: TODO State26866
-Node: Archive27234
-Node: Chain Property27554
-Node: Clocking27837
-Node: Property28249
-Node: Priority30436
-Node: Tag31005
-Node: Effort31222
-Node: Advanced Features31611
-Node: Conditions31995
-Node: done32610
-Node: headings32774
-Node: todo-state33150
-Node: variable-set33406
-Node: has-property33835
-Node: re-search34104
-Node: Negating Conditions34464
-Node: Consideration34851
-Node: Conditional Forms36420
-Node: Setting the Properties39076
-Node: Extending Edna40160
-Node: Naming Conventions40650
-Node: Finders 141111
-Node: Actions 141473
-Node: Conditions 141932
-Node: Contributing42818
-Node: Bugs43369
-Node: Development43721
-Node: Documentation44874
-Node: Changelog45319
-Node: 10beta545506
-Node: 10beta445877
-Node: 10beta346130
-Node: 10beta246569
+Node: Copying3693
+Node: Introduction4515
+Node: Installation and Setup5463
+Node: Basic Operation6256
+Node: Blockers8107
+Node: Triggers8393
+Node: Syntax8655
+Node: Basic Features9345
+Node: Finders9648
+Node: ancestors11413
+Node: children12007
+Node: descendants12417
+Node: file12939
+Node: first-child13688
+Node: ids13948
+Node: match14609
+Node: next-sibling15247
+Node: next-sibling-wrap15504
+Node: olp15818
+Node: org-file16230
+Node: parent16875
+Node: previous-sibling17073
+Node: previous-sibling-wrap17334
+Node: relatives17613
+Node: rest-of-siblings21234
+Node: rest-of-siblings-wrap21519
+Node: self21868
+Node: siblings22029
+Node: siblings-wrap22266
+Node: Actions22570
+Node: Scheduled/Deadline23312
+Node: TODO State26887
+Node: Archive27255
+Node: Chain Property27575
+Node: Clocking27858
+Node: Property28270
+Node: Priority30457
+Node: Tag31026
+Node: Effort31243
+Node: Advanced Features31632
+Node: Conditions32016
+Node: done32631
+Node: headings32795
+Node: todo-state33171
+Node: variable-set33427
+Node: has-property33856
+Node: re-search34125
+Node: Negating Conditions34485
+Node: Consideration34872
+Node: Conditional Forms36441
+Node: Setting the Properties39097
+Node: Extending Edna40181
+Node: Naming Conventions40671
+Node: Finders 141132
+Node: Actions 141494
+Node: Conditions 141953
+Node: Contributing42839
+Node: Bugs43390
+Node: Development43742
+Node: Documentation44895
+Node: Changelog45340
+Node: 10beta645548
+Node: 10beta545716
+Node: 10beta446103
+Node: 10beta346356
+Node: 10beta246795
 End Tag Table
diff --git a/org-edna.org b/org-edna.org
index 936ce84..0676a31 100644
--- a/org-edna.org
+++ b/org-edna.org
@@ -1291,6 +1291,9 @@ making any changes:
 :DESCRIPTION: List of changes by version
+** 1.0beta6
+- Fixed error reporting
+- Fixed parsing of negations in conditions
 ** 1.0beta5
 Some new forms and a new build system.
diff --git a/test.mk b/test.mk
index 87fe6ad..29e31e5 100644
--- a/test.mk
+++ b/test.mk
@@ -16,8 +16,8 @@
 # EDE only allows arbitrary code from an external makefile, so this is how 
 # got to do testing.
-       $(EMACS) \
+test: compile
+       @$(EMACS) \
        $(EMACSFLAGS) \
        $(addprefix -L ,$(LOADPATH)) \
        -L "." \

reply via email to

[Prev in Thread] Current Thread [Next in Thread]