Re: Discourse
On Thu 23 Feb 2023 at 15:14:08 (-0800), Aaron Hill wrote: > On 2023-02-23 3:08 pm, David Wright wrote: > > On Thu 23 Feb 2023 at 23:50:43 (+0100), Jean Abou Samra wrote: > > > Le jeudi 23 février 2023 à 22:14 +, Wols Lists a écrit : > > > > > > Many of the websites I interact with on a regular basis (shopping, of > > > > course) have completely broken print interfaces, so bad that one page of > > > > interesting web text will give 20 pages of print with all of the > > > > interesting text missing ... > > > > > > I just tried Ctrl-P on > > > https://discuss.python.org/t/pep-702-marking-deprecations-using-the-type-system/23036 > > > (in Firefox). It gave me a perfectly legible and relatively > > > nicely formatted PDF. > > > > I just tried ^P on the same link in FF, and I got a bar that said: > > > > "Firefox prevented this site from opening a pop-up window. > > [Preferences] ×" > > > > What does it contain/is it for? > > That's an overly aggressive pop-up blocker. For any given site, it's Yes or No. FF says No aggressively?¹ :) > Opening new pages for > printing is a pretty normal use case. > > But you should be able to manually add "/print" to the end of the URL > and navigate to the page without the pop-up block. Thanks. That gave me precisely what I normally get by typing ^P. With all the hundreds of pages that I've printed from FF (I hasten to add that I only print to PDFs from applications), this is the first site to trigger a "pop-up" on pressing ^P. Assuming that this modal print dialog box is what the "pop-up" contains, I can't understand why this site, unlike any other, considers it a pop-up. I don't suppose it's worth signing up just to ask. ¹ OTOH my ad-etc-blocking is aggressive, ~13,500 addresses. Cheers, David.
Re: Discourse
Le jeudi 23 février 2023 à 17:08 -0600, David Wright a écrit : > I just tried ^P on the same link in FF, and I got a bar that said: > > "Firefox prevented this site from opening a pop-up window. [Preferences] ×" > > What does it contain/is it for? It contains a printing dialog. Try it, it won't bite you :) signature.asc Description: This is a digitally signed message part
Re: Discourse
You can set your preferences as you see fit. See previous post. Andrew On 24/02/2023 10:14 am, Aaron Hill wrote: That's an overly aggressive pop-up blocker. Opening new pages for printing is a pretty normal use case.
Re: Discourse
You have blocked popups in Firefox. It's not from the site. Printing a page requires a popup dialog. At least my current version of Firefox (111.0) has an Options button allowing you to handle this in whatever way you want, which shows at the top of the page. Perhaps in your version the button is labelled Preferences, where you can control the behaviour. Andrew On 24/02/2023 10:08 am, David Wright wrote: I just tried ^P on the same link in FF, and I got a bar that said: "Firefox prevented this site from opening a pop-up window. [Preferences] ×" What does it contain/is it for? Cheers, David.
Re: Discourse
On 2023-02-23 3:08 pm, David Wright wrote: On Thu 23 Feb 2023 at 23:50:43 (+0100), Jean Abou Samra wrote: Le jeudi 23 février 2023 à 22:14 +, Wols Lists a écrit : > Many of the websites I interact with on a regular basis (shopping, of > course) have completely broken print interfaces, so bad that one page of > interesting web text will give 20 pages of print with all of the > interesting text missing ... I just tried Ctrl-P on https://discuss.python.org/t/pep-702-marking-deprecations-using-the-type-system/23036 (in Firefox). It gave me a perfectly legible and relatively nicely formatted PDF. I just tried ^P on the same link in FF, and I got a bar that said: "Firefox prevented this site from opening a pop-up window. [Preferences] ×" What does it contain/is it for? That's an overly aggressive pop-up blocker. Opening new pages for printing is a pretty normal use case. But you should be able to manually add "/print" to the end of the URL and navigate to the page without the pop-up block. -- Aaron Hill
Re: Discourse
On Thu 23 Feb 2023 at 23:50:43 (+0100), Jean Abou Samra wrote: > Le jeudi 23 février 2023 à 22:14 +, Wols Lists a écrit : > > Many of the websites I interact with on a regular basis (shopping, of > > course) have completely broken print interfaces, so bad that one page of > > interesting web text will give 20 pages of print with all of the > > interesting text missing ... > > I just tried Ctrl-P on > https://discuss.python.org/t/pep-702-marking-deprecations-using-the-type-system/23036 > (in Firefox). It gave me a perfectly legible and relatively nicely formatted > PDF. I just tried ^P on the same link in FF, and I got a bar that said: "Firefox prevented this site from opening a pop-up window. [Preferences] ×" What does it contain/is it for? Cheers, David.
Re: Discourse
Le jeudi 23 février 2023 à 22:14 +, Wols Lists a écrit : > On 22/02/2023 12:39, Andrew Bernard wrote: > > > My offer is open. For the main Discourse server I run, amusingly the > > majority of people use the email interface, no matter how much I > > encourage them to use the nice web interface. [It's a forum devoted to > > harpsichord.] The point is that it runs the web interface and email list > > including digests in parallel, and you can initiate topics by email as > > well. > > > Your "nice web interface" is my "pain in the arse". I much prefer to > work in an off-line manner, using text. I can't work off-line with a web > server. You can work off-line with the emails that Discourse sends you. In fact, you can interact with Discourse pretty much like you do with a mailing list and never visit the website. > Most web sites (can't speak for Discourse, I've never touched it) are > stuffed full of adverts that often obscure the text I'm interested in. Discourse is free software and does not include adverts. > Many of the websites I interact with on a regular basis (shopping, of > course) have completely broken print interfaces, so bad that one page of > interesting web text will give 20 pages of print with all of the > interesting text missing ... I just tried Ctrl-P on https://discuss.python.org/t/pep-702-marking-deprecations-using-the-type-system/23036 (in Firefox). It gave me a perfectly legible and relatively nicely formatted PDF. > Pretty much EVERY web site I CHOOSE to interact with has its design > ethos stuck in the last century. Discourse might be similar, but I have > absolutely no desire to find out. And the last I heard of discourse (it > sounds like your setup is better) email appeared to be a second class > citizen. For me, interacting with Discourse forums by email works just fine. The only quirk I remember with discuss.python.org is that at some point, it was quoting the whole discussion in every reply, which was annoying. I turned off some option in the preferences and it went away. The other main difference from a mailing list is the linear flow (not threaded). I don't consider this an issue personally, but your mileage may vary. > And of course, the other massive difference between web and email is > that I have to actively visit the website - I've got better things to do > with my time. Email just ends up in my (in this case) lilypond-box for > me to scan as and when I have nothing better to do :-) Again, in my experience, interacting with Discourse by email only works jus fine. > This is only my opinion - other people are free to disagree. There's no > right or wrong, only a whole bunch of lost people who for one reason or > another are unwilling/unable to make the transition. I've had a list > move underneath me - I didn't move with it ... You're free to have your opinion of course, and I'm not saying that Discourse is perfect — it has its issues, like mailing lists have their issues — but most of your fears seem unfounded to me. signature.asc Description: This is a digitally signed message part
Re: Discourse
One of the few web interfaces that seems pretty functional these days is Google's with their "Enterprise" lineup (Email, Docs, Spreadsheets, presentations, etc). They act like full-featured desktop apps and not handicapped versions. Personally, I think the current email-based setup works fine. I haven't had to browse an archive for info, but I'm sure there's a way. Jean & Co. put in a whole lot of time bringing us support for a great piece of software, so I think they've more than "done their duty" for the community. On Thu, Feb 23, 2023 at 5:15 PM Wols Lists wrote: > On 22/02/2023 12:39, Andrew Bernard wrote: > > My offer is open. For the main Discourse server I run, amusingly the > > majority of people use the email interface, no matter how much I > > encourage them to use the nice web interface. [It's a forum devoted to > > harpsichord.] The point is that it runs the web interface and email list > > including digests in parallel, and you can initiate topics by email as > > well. > > Your "nice web interface" is my "pain in the arse". I much prefer to > work in an off-line manner, using text. I can't work off-line with a web > server. > > Most web sites (can't speak for Discourse, I've never touched it) are > stuffed full of adverts that often obscure the text I'm interested in. > Many of the websites I interact with on a regular basis (shopping, of > course) have completely broken print interfaces, so bad that one page of > interesting web text will give 20 pages of print with all of the > interesting text missing ... > > Pretty much EVERY web site I CHOOSE to interact with has its design > ethos stuck in the last century. Discourse might be similar, but I have > absolutely no desire to find out. And the last I heard of discourse (it > sounds like your setup is better) email appeared to be a second class > citizen. > > And of course, the other massive difference between web and email is > that I have to actively visit the website - I've got better things to do > with my time. Email just ends up in my (in this case) lilypond-box for > me to scan as and when I have nothing better to do :-) > > This is only my opinion - other people are free to disagree. There's no > right or wrong, only a whole bunch of lost people who for one reason or > another are unwilling/unable to make the transition. I've had a list > move underneath me - I didn't move with it ... > > Cheers, > Wol > > -- *Jeff Kopmanis* Medium: https://kopmanis.medium.com GLAAC: https://www.glaac.org/ University Lowbrow Astronomers: http://umich.edu/~lowbrows Orange Can Astronomy: https://www.facebook.com/orangecanastronomy/ ** Go Green and leave this email on the Screen! **
Re: Discourse
On 22/02/2023 12:39, Andrew Bernard wrote: My offer is open. For the main Discourse server I run, amusingly the majority of people use the email interface, no matter how much I encourage them to use the nice web interface. [It's a forum devoted to harpsichord.] The point is that it runs the web interface and email list including digests in parallel, and you can initiate topics by email as well. Your "nice web interface" is my "pain in the arse". I much prefer to work in an off-line manner, using text. I can't work off-line with a web server. Most web sites (can't speak for Discourse, I've never touched it) are stuffed full of adverts that often obscure the text I'm interested in. Many of the websites I interact with on a regular basis (shopping, of course) have completely broken print interfaces, so bad that one page of interesting web text will give 20 pages of print with all of the interesting text missing ... Pretty much EVERY web site I CHOOSE to interact with has its design ethos stuck in the last century. Discourse might be similar, but I have absolutely no desire to find out. And the last I heard of discourse (it sounds like your setup is better) email appeared to be a second class citizen. And of course, the other massive difference between web and email is that I have to actively visit the website - I've got better things to do with my time. Email just ends up in my (in this case) lilypond-box for me to scan as and when I have nothing better to do :-) This is only my opinion - other people are free to disagree. There's no right or wrong, only a whole bunch of lost people who for one reason or another are unwilling/unable to make the transition. I've had a list move underneath me - I didn't move with it ... Cheers, Wol
Separating content and form for pieces with many movements (e.g. masses)
Hello Pondmates, as I am going to engrave a small mass for a friend I’ve sketched a small set of functions that should make engraving pieces with many movements of very similar structure much more fun. Previously when doing such things I would have files for each movement defining namesspaced variables, providing different parts, and then combine them in a master using \includes. This sketch here replaces this by a registering interface. Suppose we have a mass. Then this allows us to do for each part (possibly in an included file or even multiple included files): \registerPart #'kyrie \partSetTitle #'kyrie "Kyrie" \partSetGlobal #'kyrie { ... global block ... } \partSetCGlobal #'kyrie { \dynamicUp } \partSetStaff #'gloria #'flute { music } ... the same for all instruments and voices ... \partAddLyrics #'kyrie #'soprano \lyricmode { lyrics } ... the same for all lyrics ... This then registers the content of each part. If we want to print the score we can do \printParts layout where layout is a function turning a part into a score. These layout functions could be defined in included files, allowing us to fully separate content and form. Creating instrument parts is then nothing but using a specific layout function. This is something just sketched up now. It works, but it surely could be expanded to fit more needs (but it can easily be expanded, modified and adapted). I still hope this might prove useful or educational for some of you. Cheers, Valentin% Given a nested alist sets a value by a path. Does not guaratee to mutate the alist! #(define (nested-assoc-set! alist path value) (if (null? path) value (assoc-set! alist (car path) (nested-assoc-set! (assoc-get (car path) alist '()) (cdr path) value % Given a nested alist gets a value by a path #(define* (nested-assoc-get alist path #:optional (default '())) (if (null? path) alist (let ((q (assoc-get (car path) alist default))) (if (list? q) (nested-assoc-get q (cdr path) default) q % Container for our parts. An alist. #(define parts (if (defined? 'parts) parts '())) % Assigns a new part to our container. Not strictly necessary, but sets the 'order property registerPart = #(define-void-function (partname) (symbol?) (set! parts (assoc-set! parts partname (list (cons 'order (length parts)) % Assign the title as markup of a given part. partSetTitle = #(define-void-function (partname title) (symbol? markup?) (set! parts (nested-assoc-set! parts (list partname 'title) title))) % Return the title of a given part as markup partGetTitle = #(define-scheme-function (partname) (symbol?) (nested-assoc-get parts (list partname 'title) #f)) % Add a (named) piece of music (such as flute, violin, ...) to a part partSetStaff = #(define-void-function (partname staff mus) (symbol? symbol? ly:music?) (set! parts (nested-assoc-set! parts (list partname 'staves staff) mus))) % Returns a (named) piece of music (such as flute, violin, ...) from a part partGetStaff = #(define-music-function (partname staff) (symbol? symbol?) (nested-assoc-get parts (list partname 'staves staff) (empty-music))) % Assign an instrument name to a staff partSetStaffName = #(define-void-function (partname staff name) (symbol? symbol? markup?) (set! parts (nested-assoc-set! parts (list partname 'staff-names staff) name))) % Returns the instrument name of a staff. May take a default value. partGetStaffName = #(define-scheme-function (default partname staff) ((markup? #f) symbol? symbol?) (nested-assoc-get parts (list partname 'staff-names staff) default)) % Adds a new line of lyrics to a staff. May optionally specify % an alist props to provide values such as 'associatedVoice (default: voice-... where ... is % the name of the music. partAddLyrics = #(define-void-function (partname staff props mus) (symbol? symbol? (list? '()) ly:music?) (set! parts (nested-assoc-set! parts (list partname 'lyrics staff) (cons `((lyrics . ,mus) . ,props) (partGetLyrics partname staff) % Returns the lyrics associated with staff. This is a list of % alists with keys 'lyrics and optional keys specified during \partAddLyrics partGetLyrics = #(define-scheme-function (partname staff) (symbol? symbol?) (nested-assoc-get parts (list partname 'lyrics staff) '())) #(define (context-mod-or-procedure? x) (or (ly:context-mod? x) (procedure? x))) % Creates Lyrics contexts for a staff. May optionally specify a % context mod or a procedure taking the lyrics alist as argument and returning a context mod partFormatLyrics = #(define-music-function (with partname staff) ((context-mod-or-procedure? (ly:make-context-mod)) symbol? symbol?) (make-music 'SimultaneousMusic 'elements (map (lambda (x) (let ((lyr
Re: Excessive spacing due to chords
Fantastic, thank you very much! El 2023-02-23 15:24, Jean Abou Samra escribió: Le jeudi 23 février 2023 à 15:13 +0100, mi...@orbelanet.com a écrit : Good morning, I have 2 question related to spacing in lilypond: * How to avoid the excessive gap that forms between the sixteenth notes (marked in green in ttached image) due to chords? Use \override ChordName.extra-spacing-width = #'(+inf.0 . -inf.0) See the documentation page here [1]. * How to avoid the collision between the number 3 of the triplet and the slur (marked in green in ttached image)? You could tweak the padding a bit. Giving: \version "2.24.0" global = { \key g \minor \tempo 4 = 90 \time 2/4 } voiceI = \relative { \repeat volta 2 { % mes.1 g'16 bes a bes g bes a bes a c b c a c b c | a c b c a c b c bes d cis d bes d cis d | \break % mes.5 b d cis d b d cis d c ees d ees c ees d ees d a'( fis d c) a( bes c d) d,( ees e f fis g aes) | \break } } voiceII = \relative { \repeat volta 2 { % mes.1 g4 a8( bes c4)~ c16 ees( d ees c4.) d8( bes4)~ bes16 d( g fis | % mes.5 g4~) \tweak TupletBracket.padding 2 \tuplet 3/2 { g8 fis( f } ees4~) \tweak TupletBracket.padding 2 \tuplet 3/2 { ees8 d( cis } d16) ees( d cis d) c( bes a d) d( cis c b bes a aes) | } } melody = \relative { << { \voiceI } \\ { \voiceII } >> } harmonies = \chords { \set minorChordModifier = \markup { "-" } g2:m d:7/a s g:m/bes g:7/b c:m d:7 g4:m d:aug7 } \score { \new Staff << \harmonies \new Voice { \global \melody } >> \layout { \context { \Staff \accepts ChordNames } \context { \ChordNames \remove Axis_group_engraver \override ChordName.outside-staff-priority = 500 \override ChordName.direction = #DOWN \override ChordName.outside-staff-padding = 0.5 \override ChordName.extra-spacing-width = #'(+inf.0 . -inf.0) } } } Note that I chose to rename your variables "voiceOne" and "voiceTwo" because these are also the names of predefined LilyPond commands. Best, Jean Links: -- [1] https://lilypond.org/doc/v2.24/Documentation/notation/adjusting-horizontal-spacing-for-specific-layout-objects
Re: Excessive spacing due to chords
Le jeudi 23 février 2023 à 15:13 +0100, mi...@orbelanet.com a écrit : > Good morning, > > I have 2 question related to spacing in lilypond: > > 1. How to avoid the excessive gap that forms between the sixteenth notes > (marked in green in ttached image) due to chords? Use ``` \override ChordName.extra-spacing-width = #'(+inf.0 . -inf.0) ``` See the documentation page [here](https://lilypond.org/doc/v2.24/Documentation/notation/adjusting-horizontal-spacing-for-specific-layout-objects). > 2. How to avoid the collision between the number 3 of the triplet and > the slur (marked in green in ttached image)? You could tweak the padding a bit. Giving: ``` \version "2.24.0" global = { \key g \minor \tempo 4 = 90 \time 2/4 } voiceI = \relative { \repeat volta 2 { % mes.1 g'16 bes a bes g bes a bes a c b c a c b c | a c b c a c b c bes d cis d bes d cis d | \break % mes.5 b d cis d b d cis d c ees d ees c ees d ees d a'( fis d c) a( bes c d) d,( ees e f fis g aes) | \break } } voiceII = \relative { \repeat volta 2 { % mes.1 g4 a8( bes c4)~ c16 ees( d ees c4.) d8( bes4)~ bes16 d( g fis | % mes.5 g4~) \tweak TupletBracket.padding 2 \tuplet 3/2 { g8 fis( f } ees4~) \tweak TupletBracket.padding 2 \tuplet 3/2 { ees8 d( cis } d16) ees( d cis d) c( bes a d) d( cis c b bes a aes) | } } melody = \relative { << { \voiceI } \\ { \voiceII } >> } harmonies = \chords { \set minorChordModifier = \markup { "-" } g2:m d:7/a s g:m/bes g:7/b c:m d:7 g4:m d:aug7 } \score { \new Staff << \harmonies \new Voice { \global \melody } >> \layout { \context { \Staff \accepts ChordNames } \context { \ChordNames \remove Axis_group_engraver \override ChordName.outside-staff-priority = 500 \override ChordName.direction = #DOWN \override ChordName.outside-staff-padding = 0.5 \override ChordName.extra-spacing-width = #'(+inf.0 . -inf.0) } } } ``` Note that I chose to rename your variables "voiceOne" and "voiceTwo" because these are also the names of predefined LilyPond commands. Best, Jean signature.asc Description: This is a digitally signed message part
Re: Policy for posts from non-members
Exactly the point I made. So I agree. Perhaps add some place for policy and guidelines and mailing list FAQs o be made clear also. I think this info would be worthy of its own page. Andrew On 23/02/2023 9:50 pm, Valentin Petzel wrote: Hi Jean, I still think it would be a good idea to reword https://lilypond.org/contact.html to make it clear that subscription is wanted.
Re: Policy for posts from non-members
Le jeudi 23 février 2023 à 11:50 +0100, Valentin Petzel a écrit : > Hi Jean, > I still think it would be a good idea to reword > > [https://lilypond.org/contact.html](https://lilypond.org/contact.html) > > to make it clear that subscription is wanted. Yes, I think is an excellent suggestion. Can you submit a merge request, please? signature.asc Description: This is a digitally signed message part
Re: Policy for posts from non-members
Hi Jean, I still think it would be a good idea to reword https://lilypond.org/contact.html to make it clear that subscription is wanted. Cheers, Valentin Am Mittwoch, 22. Februar 2023, 23:24:18 CET schrieb Jean Abou Samra: > Le mardi 21 février 2023 à 23:36 +0100, Jean Abou Samra a écrit : > > Hi, > > I've not been an admin of this list for very long, yet I'm already weary > > of telling people who post without being subscribed to the list that they > > should subscribe in order to avoid each of their messages being manually > > approved. I wonder what you (meaning everyone, but especially Mark, the > > other admin) would think about changing the list configuration to reject > > post from non-members instead of holding them on moderation, with a > > message such as “Welcome to the lilypond-user mailing list. We apologize, > > but in order to prevent spam, we need you to subscribe to the list before > > you post. Please fill out the subscription form on > > [https://lists.gnu.org/mailman/listinfo/lilypond-user](https://lists.gnu. > > org/mailman/listinfo/lilypond-user). Once you are subscribed, you will > > receive all posts to the list, so you can help out other people as well. > > However, if you only wish to interact with this list infrequently, you > > may disable mail subscription in your membership preferences after you > > have subscribed. If you believe you are already subscribed to the list, > > it probably means that you accidentally posted from a different email > > address than the one you are subscribed with. If you have any question or > > encounter problems, feel free to contact the list admins at > > lilypond-user-ow...@gnu.org” On the plus side, this means that instead of > > delaying the message until Mark or me looks at it, the feedback will come > > instantly. > An update on this: > > It turned out to be a really bad idea. Fortunately, Bob Proulx, an admin > on GNU's Mailman server, noticed the change and explained why. > > The problem is > [backscatter](https://en.wikipedia.org/wiki/Backscatter_(email)). If a > spammer sends a spam while making it look like > it comes from a real address that is not subscribed to the list, > the person this real address belongs to receives an automated > message from the list, which is viewed as unsolicited. Not only is that bad > for this person, but it leads to DNS blacklisting for lists.gnu.org, > which affects all GNU lists badly. > > I apologize for this; I didn't realize this implication at all. > The change has been rolled back and things will just remain as they > were before. Thank you Bob! > > Jean signature.asc Description: This is a digitally signed message part.