lilypond-user
[Top][All Lists]
Advanced

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

Re: python-ly, ly.indent


From: Urs Liska
Subject: Re: python-ly, ly.indent
Date: Sat, 17 Aug 2019 08:51:34 +0200
User-agent: K-9 Mail for Android

Just shortly: does

https://github.com/frescobaldi/python-ly/blob/master/ly/cli/main.py

and

https://github.com/frescobaldi/python-ly/blob/master/ly/cli/command.py#L116

help you further? I thought it would be best to look how the ly command line program does it.

Urs


Am 17. August 2019 03:00:47 MESZ schrieb address@hidden:
Hi all,

The command line tools provided by python-ly are very
convenient and easy to use, but I'm finding it a little harder to wrap
my head around the Python module.

For example, it is easy to automatically indent a file with

$ ly "indent" file.ly

or to indent the output of another command such as

$ cat file.ly | ly "indent"

I'd like to be able to do something similar in Python, using ly.indent
to indent files or (preferably) strings. It seems that ly.indent might
be what I want, but I'm having trouble figuring out how it works. The
Indenter() class, with an indent() function, is defined here,[1] but I'm
don't understand what a cursor object is or how to create and pass one.
I next tried looking through Frescobaldi's code for example usage and
found this,[2] but I think I would need to learn more about how
Frescobaldi works in order to follow what's happening, which is deeper
than I want to go to indent a string of Lilypond code.

Is there a simple way to use ly.indent similarly to `ly "indent"`, or
would I be better off invoking `ly "indent"` externally with
os.system()?

Thanks,

Mason

[1] https://github.com/frescobaldi/python-ly/blob/0d91ca2450ba01a8158f53ba05202af3e13bf78d/ly/indent.py

[2] https://github.com/frescobaldi/frescobaldi/blob/09cae764126b505dedf0182beccd78d7934b2de4/frescobaldi_app/indent.py

--
Diese Nachricht wurde von meinem Android-Gerät mit K-9 Mail gesendet.
reply via email to

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