Skip to content

Commit

Permalink
Add support for tremolos (#7)
Browse files Browse the repository at this point in the history
  • Loading branch information
kisp committed Dec 28, 2018
1 parent 6549382 commit 5521235
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 3 deletions.
2 changes: 1 addition & 1 deletion dist/musicxml-pwgl.noasd
Expand Up @@ -20,7 +20,7 @@
(require "comm")

(asdf:defsystem musicxml-pwgl
:version "0.1.132"
:version "0.1.133"
:description "musicxml export for pwgl"
:maintainer "Kilian Sprotte <kilian.sprotte@gmail.com>"
:author "Kilian Sprotte <kilian.sprotte@gmail.com>"
Expand Down
10 changes: 9 additions & 1 deletion enp2musicxml.lisp
Expand Up @@ -278,7 +278,15 @@
(unregister-slur *slur-store* slur) "stop"))))
(slur-expressions chord))))
(append (convert-slurs chord)
(convert-articulations chord))))
(convert-articulations chord)
(when (member :tremolo8 (chord-expressions chord) :key #'atom-or-first)
'((:|ornaments| ((:|tremolo| :|type| "single") 1))))
(when (member :tremolo16 (chord-expressions chord) :key #'atom-or-first)
'((:|ornaments| ((:|tremolo| :|type| "single") 2))))
(when (member :tremolo32 (chord-expressions chord) :key #'atom-or-first)
'((:|ornaments| ((:|tremolo| :|type| "single") 3))))
(when (member :tremolo64 (chord-expressions chord) :key #'atom-or-first)
'((:|ornaments| ((:|tremolo| :|type| "single") 4)))))))

(defun convert-dynamics (chord next-chord)
(declare (type chord chord))
Expand Down
2 changes: 1 addition & 1 deletion musicxml-pwgl.asd
Expand Up @@ -18,7 +18,7 @@
;;; along with this program. If not, see <http://www.gnu.org/licenses/>.

(asdf:defsystem musicxml-pwgl
:version "0.1.132"
:version "0.1.133"
:description "musicxml export for pwgl"
:maintainer "Kilian Sprotte <kilian.sprotte@gmail.com>"
:author "Kilian Sprotte <kilian.sprotte@gmail.com>"
Expand Down
Binary file modified tests.db
Binary file not shown.

1 comment on commit 5521235

@0pdd
Copy link

@0pdd 0pdd commented on 5521235 Dec 28, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wasn't able to retrieve PDD puzzles from the code base and submit them to GitHub. If you think that it's a bug on our side, please submit it to yegor256/0pdd:

set -x && set -e && set -o pipefail && cd /tmp/0pdd20181227-4-g9c2tl/kisp/musicxml-pwgl && pdd -v -f /tmp/20181228-13347-19os4cs [1]: bash: warning: setlocale: LC_ALL: cannot change locale (UTF-8) + set -e + set -o pipefail + cd /tmp/0pdd20181227-4-g9c2tl/kisp/musicxml-pwgl + pdd -v -f...

Please, copy and paste this stack trace to GitHub:

UserError
set -x && set -e && set -o pipefail && cd /tmp/0pdd20181227-4-g9c2tl/kisp/musicxml-pwgl && pdd -v -f /tmp/20181228-13347-19os4cs [1]:
bash: warning: setlocale: LC_ALL: cannot change locale (UTF-8)
+ set -e
+ set -o pipefail
+ cd /tmp/0pdd20181227-4-g9c2tl/kisp/musicxml-pwgl
+ pdd -v -f /tmp/20181228-13347-19os4cs

My version is 0.20.4
Ruby version is 2.5.1 at x86_64-linux
Reading /tmp/0pdd20181227-4-g9c2tl/kisp/musicxml-pwgl
58 file(s) found, 56 excluded
/tmp/0pdd20181227-4-g9c2tl/kisp/musicxml-pwgl/tests.db is a binary file (1221632 bytes)
/tmp/0pdd20181227-4-g9c2tl/kisp/musicxml-pwgl/pwgl-fomus-patches/open-in-finale-reader.applescript.gz is a binary file (204 bytes)
Reading todo.org...
ERROR: todo.org; puzzle at line #23; TODO found, but puzzle can't be parsed, most probably because TODO is not followed by a puzzle marker, as this page explains: https://github.com/yegor256/pdd#how-to-format
If you can't understand the cause of this issue or you don't know how to fix it, please submit a GitHub issue, we will try to help you: https://github.com/yegor256/pdd/issues. This tool is still in its beta version and we will appreciate your feedback. Here is where you can find more documentation: https://github.com/yegor256/pdd/blob/master/README.md.
Exit code is 1

/app/objects/git_repo.rb:66:in `rescue in block in xml'
/app/objects/git_repo.rb:63:in `block in xml'
/app/vendor/ruby-2.5.1/lib/ruby/2.5.0/tempfile.rb:295:in `open'
/app/objects/git_repo.rb:62:in `xml'
/app/objects/puzzles.rb:36:in `deploy'
/app/objects/job.rb:38:in `proceed'
/app/objects/job_starred.rb:33:in `proceed'
/app/objects/job_recorded.rb:32:in `proceed'
/app/objects/job_emailed.rb:35:in `proceed'
/app/objects/job_commiterrors.rb:36:in `proceed'
/app/objects/job_detached.rb:48:in `exclusive'
/app/objects/job_detached.rb:36:in `block in proceed'
/app/objects/job_detached.rb:36:in `fork'
/app/objects/job_detached.rb:36:in `proceed'
/app/0pdd.rb:354:in `block in <top (required)>'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1635:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1635:in `block in compile!'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:992:in `block (3 levels) in route!'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1011:in `route_eval'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:992:in `block (2 levels) in route!'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1040:in `block in process_route'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1038:in `catch'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1038:in `process_route'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:990:in `block in route!'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:989:in `each'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:989:in `route!'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1097:in `block in dispatch!'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `block in invoke'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `catch'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `invoke'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1094:in `dispatch!'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:924:in `block in call!'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `block in invoke'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `catch'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1076:in `invoke'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:924:in `call!'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:913:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/rack-protection-2.0.4/lib/rack/protection/xss_header.rb:18:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/rack-protection-2.0.4/lib/rack/protection/path_traversal.rb:16:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/rack-protection-2.0.4/lib/rack/protection/json_csrf.rb:26:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/rack-protection-2.0.4/lib/rack/protection/base.rb:50:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/rack-protection-2.0.4/lib/rack/protection/base.rb:50:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/rack-protection-2.0.4/lib/rack/protection/frame_options.rb:31:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/rack-2.0.6/lib/rack/logger.rb:15:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/rack-2.0.6/lib/rack/common_logger.rb:33:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:231:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:224:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/rack-2.0.6/lib/rack/head.rb:12:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/rack-2.0.6/lib/rack/method_override.rb:22:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:194:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1957:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1502:in `block in call'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1729:in `synchronize'
/app/vendor/bundle/ruby/2.5.0/gems/sinatra-2.0.4/lib/sinatra/base.rb:1502:in `call'
/app/vendor/bundle/ruby/2.5.0/gems/rack-2.0.6/lib/rack/handler/webrick.rb:86:in `service'
/app/vendor/ruby-2.5.1/lib/ruby/2.5.0/webrick/httpserver.rb:140:in `service'
/app/vendor/ruby-2.5.1/lib/ruby/2.5.0/webrick/httpserver.rb:96:in `run'
/app/vendor/ruby-2.5.1/lib/ruby/2.5.0/webrick/server.rb:307:in `block in start_thread'

Please sign in to comment.