LEFT | RIGHT |
1 ;;;; This file is part of LilyPond, the GNU music typesetter. | 1 ;;;; This file is part of LilyPond, the GNU music typesetter. |
2 ;;;; | 2 ;;;; |
3 ;;;; Copyright (C) 1998--2015 Jan Nieuwenhuizen <janneke@gnu.org> | 3 ;;;; Copyright (C) 1998--2015 Jan Nieuwenhuizen <janneke@gnu.org> |
4 ;;;; Han-Wen Nienhuys <hanwen@xs4all.nl> | 4 ;;;; Han-Wen Nienhuys <hanwen@xs4all.nl> |
5 ;;;; | 5 ;;;; |
6 ;;;; LilyPond is free software: you can redistribute it and/or modify | 6 ;;;; LilyPond is free software: you can redistribute it and/or modify |
7 ;;;; it under the terms of the GNU General Public License as published by | 7 ;;;; it under the terms of the GNU General Public License as published by |
8 ;;;; the Free Software Foundation, either version 3 of the License, or | 8 ;;;; the Free Software Foundation, either version 3 of the License, or |
9 ;;;; (at your option) any later version. | 9 ;;;; (at your option) any later version. |
10 ;;;; | 10 ;;;; |
(...skipping 939 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
950 locs is a list of music expressions suitable for giving | 950 locs is a list of music expressions suitable for giving |
951 error locations (enclosing expression for the first element, | 951 error locations (enclosing expression for the first element, |
952 preceding \\\\ separator for the others) | 952 preceding \\\\ separator for the others) |
953 " | 953 " |
954 (define (voicify-sublist loc sublist id) | 954 (define (voicify-sublist loc sublist id) |
955 (cond ((string? id) | 955 (cond ((string? id) |
956 (context-spec-music | 956 (context-spec-music |
957 (make-simultaneous-music sublist) | 957 (make-simultaneous-music sublist) |
958 'Bottom id)) | 958 'Bottom id)) |
959 ((symbol? id) | 959 ((symbol? id) |
960 (voicify-sublist sublist (symbol->string id))) | 960 (voicify-sublist loc sublist (symbol->string id))) |
961 ((and (integer? id) (exact? id) (positive? id)) | 961 ((and (integer? id) (exact? id) (positive? id)) |
962 (context-spec-music | 962 (context-spec-music |
963 (make-sequential-music | 963 (make-sequential-music |
964 (list (make-voice-props-set (1- id)) | 964 (list (make-voice-props-set (1- id)) |
965 (make-simultaneous-music sublist))) | 965 (make-simultaneous-music sublist))) |
966 'Bottom (number->string id))) | 966 'Bottom (number->string id))) |
967 (else | 967 (else |
968 (ly:music-warning loc (_ "Bad voice id: ~a") id) | 968 (ly:music-warning loc (_ "Bad voice id: ~a") id) |
969 (context-spec-music (make-simultaneous-music sublist) 'Bottom)))) | 969 (context-spec-music (make-simultaneous-music sublist) 'Bottom)))) |
970 | 970 |
(...skipping 1762 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2733 (memq tags music-tags) | 2733 (memq tags music-tags) |
2734 (not (any (lambda (t) (eq? (tag-group-get t) group)) music-tags))))
)) | 2734 (not (any (lambda (t) (eq? (tag-group-get t) group)) music-tags))))
)) |
2735 (let ((groups (delete-duplicates (map tag-group-get tags) eq?))) | 2735 (let ((groups (delete-duplicates (map tag-group-get tags) eq?))) |
2736 (lambda (m) | 2736 (lambda (m) |
2737 (let ((music-tags (ly:music-property m 'tags))) | 2737 (let ((music-tags (ly:music-property m 'tags))) |
2738 (or | 2738 (or |
2739 (null? music-tags) ; redundant but very frequent | 2739 (null? music-tags) ; redundant but very frequent |
2740 (any (lambda (t) (memq t tags)) music-tags) | 2740 (any (lambda (t) (memq t tags)) music-tags) |
2741 ;; if no tag matches, no tag group should match either | 2741 ;; if no tag matches, no tag group should match either |
2742 (not (any (lambda (t) (memq (tag-group-get t) groups)) music-tags))
)))))) | 2742 (not (any (lambda (t) (memq (tag-group-get t) groups)) music-tags))
)))))) |
LEFT | RIGHT |