oll-core.ily 3.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2. % %
  3. % This file is part of openLilyLib, %
  4. % =========== %
  5. % the community library project for GNU LilyPond %
  6. % (https://github.com/openlilylib) %
  7. % ----------- %
  8. % %
  9. % Library: oll-core %
  10. % ======== %
  11. % %
  12. % openLilyLib is free software: you can redistribute it and/or modify %
  13. % it under the terms of the GNU General Public License as published by %
  14. % the Free Software Foundation, either version 3 of the License, or %
  15. % (at your option) any later version. %
  16. % %
  17. % openLilyLib is distributed in the hope that it will be useful, %
  18. % but WITHOUT ANY WARRANTY; without even the implied warranty of %
  19. % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the %
  20. % GNU General Public License for more details. %
  21. % %
  22. % You should have received a copy of the GNU General Public License %
  23. % along with openLilyLib. If not, see <http://www.gnu.org/licenses/>. %
  24. % %
  25. % openLilyLib is maintained by Urs Liska, ul@openlilylib.org %
  26. % and others. %
  27. % Copyright Urs Liska, 2016 %
  28. % %
  29. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  30. % This is the main entry file for openLilyLib.
  31. % To use openLilyLib this file has to be in LilyPond's include path.
  32. % including this file with
  33. % \include "openlilylib.ily"
  34. % will initialize openLilyLib and make the library management available
  35. % as well as significant utility functionality.
  36. %
  37. % This does several things:
  38. % - defines a global variable 'openlilylib-root
  39. % which is the absolute path to the root of openLilyLib
  40. % (the parent of the folder this file is located in)
  41. % - adds openlilylib-root to Scheme's module path
  42. % - adds library/module handling support
  43. % - adds option handling
  44. % - adds logging tools
  45. % - adds miscellaneous helper functionality (e.g. version predicates)
  46. % We won't support 2.18 anymore as there are simply too many
  47. % substantial improvements in the 2.19 branch.
  48. % While development versions are usually more or less up to date,
  49. % 2.19.22 marks an important step regarding access to LilyPond's parser.
  50. \version "2.19.22"
  51. #(ly:set-option 'relative-includes #t)
  52. #(ly:input-warning (*location*)
  53. "\n\nYou have loaded \"oll-core/oll-core.ily\" which is deprecated
  54. and will be removed at some point.
  55. Please load \"oll-core/package.ily\" instead.\n\n")
  56. % Initialize oll-core *once*
  57. #(if (not (defined? 'openlilylib-root))
  58. (begin
  59. (ly:parser-parse-string (ly:parser-clone) "\\include \"oll-core/internal/os-path.ily\"")
  60. (define-public openlilylib-root (this-parent))
  61. (ly:parser-include-string "\\include \"oll-core/internal/init.ily\"")))