Re: Unison notes, one stem

2024-05-06 Thread Dirck Nagy
Thank you!

I knew there was an easy way... i should have thought of that one !

peace!

dirck



From: William Rehwinkel
Sent: Monday, May 6, 2024 9:56 PM
To: Dirck Nagy; lilypond-user@gnu.org
Cc: dirckn...@hotmail.com
Subject: Re: Unison notes, one stem

Dear Dirck,

There is a very easy way! You can simply do

\version "2.25.7"

\relative c' 4

-William

On 5/6/24 22:44, Dirck Nagy wrote:
> Hi all
>
> Does Lilypond have an easy way to display unisons on one stem?  (it is
> fairly common in guitar music; same note played on 2 strings
> simultaneously)  (see image at bottom of email)
>
> I have several instances where it would not be appropriate to make these
> unisons into separately-stemmed voices.
>
> The only way i can think to do this is to use a separate voice, then
> hide stems and tweak positions...but this seems like a lot of work!
>
> thanks!
>
> dirck
>

--
William Rehwinkel - Oberlin College and Conservatory '24

will...@williamrehwinkel.net

PGP key: https://ftp.williamrehwinkel.net/pubkey.txt


Re: Rehearsal mark on right side of measure?

2024-05-06 Thread Dirck Nagy
Thanks Aaron !

I couldn't get it to work, at first, but I was attaching it to a "spacing 
voice" with no music in it.  (I sometimes use a separate voice for barlines, 
etc... but perhaps i shouldnt be doing that)

It worked once i moved it to a voice with actual notes in it.

peace!

dirck

From: Aaron Hill 
Sent: Monday, May 6, 2024 12:09 AM
To: Dirck Nagy 
Cc: lilypond-user@gnu.org ; dirckn...@hotmail.com 

Subject: Re: Rehearsal mark on right side of measure?


Caution: *External Email: Use caution responding, opening attachments, or 
clicking on links.*


On 2024-05-05 6:49 pm, Dirck Nagy wrote:
> Hi all
>
> I am using rehearsal marks (\mark \default,  to mark off repeated
> sections as  "A", "B", etc.,  instead of Dal Segno.
>
> One of these sections ends at the end of a line.  Is there an easy way
> to move the rehearsal mark to the right side of the measure, instead of
> the left?  I can't find a command that works.
>
> Or should I be using markup commands instead?


No, \mark for RehearsalMarks is perfectly fine.  What you need to do is
firstly ensure the \mark command is located at the correct moment in the
music--it sounds like you are putting the \mark at the beginning of a
measure when it should appear at the next bar line--and then ensure its
break-visibility is set appropriately so the mark appears on the correct
line.  Consider:


\version "2.25.13"

{
   \repeat unfold 3 { b'4 4 2 }
   \tweak break-visibility #end-of-line-visible
   \tweak self-alignment-X #RIGHT
   \mark \default \break
   \repeat unfold 3 { b'4 4 2 } 1 \fine
}



-- Aaron Hill


Re: Unison notes, one stem

2024-05-06 Thread William Rehwinkel via LilyPond user discussion

Dear Dirck,

There is a very easy way! You can simply do

\version "2.25.7"

\relative c' 4

-William

On 5/6/24 22:44, Dirck Nagy wrote:

Hi all

Does Lilypond have an easy way to display unisons on one stem?  (it is 
fairly common in guitar music; same note played on 2 strings 
simultaneously)  (see image at bottom of email)


I have several instances where it would not be appropriate to make these 
unisons into separately-stemmed voices.


The only way i can think to do this is to use a separate voice, then 
hide stems and tweak positions...but this seems like a lot of work!


thanks!

dirck



--
William Rehwinkel - Oberlin College and Conservatory '24

will...@williamrehwinkel.net

PGP key: https://ftp.williamrehwinkel.net/pubkey.txt


OpenPGP_signature.asc
Description: OpenPGP digital signature


Re: Tunable Context Properties

2024-05-06 Thread Fr. Samuel Springuel
Thanks Aaron.  That worked very well.

Of course, the minute I get a solid solution, the desired result gets changed 
on me: now we’re looking at only numbering the first line.  Fortunately that’s 
an easy enough change to make.  Well, I’ll keep this solution in my back pocket 
for the inevitable request to change back to it at some point.

✝✝
Fr. Samuel, OSB
(R. Padraic Springuel)
St. Anselm’s Abbey
4501 South Dakota Ave, NE
Washington, DC, 20017
202-269-2300
(c) 202-853-7036

PAX ☧ ΧΡΙΣΤΟΣ




Re[6]: Frescobaldi?

2024-05-06 Thread Steph Phillips
No no, I understand what you're saying. I'm new to the codebase and it's 
silly to take on an entire rewrite before even fixing basic stuff. 
However, I believe that in programming it's important to dream big and 
reel back those expectations, because the fact remains that we can do 
some pretty neat stuff with computers. So I figure there's always 
opportunity for revision and growth.


That being said, I'll look over it and try to implement a patch for Qt6 
to start.


I still encourage people reading this to continue getting in touch with 
me tho, I'm happy to be a contact point for Frescobaldi-stuff. 
Especially if you have background in Python!


~Steph



Re: Frescobaldi?

2024-05-06 Thread Jean Abou Samra
> Regarding MacOs porting, a valid alternative would be to run
> the linux version of Frescobaldi from a Docker container

Perhaps, but from the perspective of building .app bundles, that replaces
a headache (shipping Qt, PyQt, Poppler and python-poppler-qt5) with what
sounds like an even larger headache, and there's a myriad of ways it won't
integrate well with the macOS system around it (file dialogs, global menu,
and so on). If the goal is to just have something that works, the Homebrew
and MacPorts packages already work better.




signature.asc
Description: This is a digitally signed message part


Re: Frescobaldi?

2024-05-06 Thread Xavier Mayeur
Regarding MacOs porting, a valid alternative would be to run the linux 
version of Frescobaldi from a Docker container


A Dockerfile like this one

FROM ubuntu

RUN apt update-yq&& apt install-y frescobaldi pulseaudio&& apt clean-y

RUN mkdir -p/Users//Scores
WORKDIR /Users//Scores
ENV XDG_RUNTIME_DIR=/tmp
ENV PULSE_SERVER=docker.for.mac.localhost


CMD frescobaldi

should made the trick.

Then create the image

docker build . -t fresco_image


Lastly, invoke the container

#! /bin/sh # Pre-requisites: # brew install pulseaudio # brew services 
start pulseaudio xhost +

docker run --rm  -v /tmp/.X11-unix:/tmp/.X11-unix \
  -v /Users//Scores/:/Users//Scores/ \
  -e PULSE_SERVER=docker.for.mac.localhost \
  -v ~/.config/pulse:/home/pulseaudio/.config/pulse \
  -e DISPLAY=docker.for.mac.host.internal:0 \
  fresco_image


I have to fine tune this (midi playback not working yet) , but it is 
fully working from an editing and compilation perspective, including 
point-and-click


Xavier Mayeur

Le 28/04/24 à 19:06, Jean Abou Samra a écrit :

Just had a quick look. It seems to me we need to create a python-poppler-qt6,
port qpageview to Qt6 and of course frescobaldi itself. I would hope that
qpageview and frescobaldi both basically mean moving from PyQt5 to PyQt6 which
I expect to be mostly busy work. The poppler bindings seem to require
understanding of what poppler does though.

All of the above is based on a brief look and thus not a reliable assessment.

Honestly, I have zero idea how hard porting to Qt 6 actually is. I think we
won't know until someone tries and finds out what exactly Frescobaldi uses that
is modified or removed in Qt 6 compared to Qt 5 as well as poppler-qt6 compared
to poppler-qt5.


In any case, I do rely on Frescobaldi and am willing to help keep it alive.

If you want to attempt the port, of course feel free.


--
Cordialement,

Xavier MAYEUR
14 rue Thiernesse
1070 Bruxelles


Re: Re[4]: Frescobaldi?

2024-05-06 Thread Jean Abou Samra
> I'm an intermediate-level python programmer but I might be able to help with
> busy work like typing and documenting functions, with some feedback.  Anything
> to give back to a project that I use all the time!


Thanks. However, without wanting to stop you from contributing, I'll reiterate
that from my point of view, what the project needs right now is focus on macOS
distribution, and Qt 6. Other work is welcome but it will not really help
the project to get out of the current impasse.




signature.asc
Description: This is a digitally signed message part


Re: Re[4]: Frescobaldi?

2024-05-06 Thread Tom Brennan
I think that all sounds good, but that kind of rework is probably
going to involve a lot of regression risk (what are the tests like
right now?), but also a ton of opportunities for improvements to the
extent that it might be a good time to make a break from backward
functional compatibility, maybe brand it as something else, and market
it as the next gen or something like that. It sounds like the code as
it is is in kind of a bad state, we've got people here on this list
that care about that code but don't have time to do much more than
review your changes, but then you are showing a lot of initiative to
contribute and have the skills and interest to take this kind of
project on. We could all just take a step back and see what you do?

On Mon, May 6, 2024 at 10:06 AM Steph Phillips  wrote:
>
> Well, I'm glad you asked about feedback because I'm curious what other
> folks who contribute to Frescobaldi might think.
>
> After digging around in the codebase, I'm wondering if the application
> might benefit from a more object-oriented design. It's definitely in
> Python, but with more of C-style approach. You've worked on it, you know
> what I'm talking about. Was wondering what your thoughts are.
>
> Additionally, I was wondering if it might benefit from typehinting
> throughout the codebase to allow for easier maintenance and plugin
> development.
>
> Thoughts? ♥
>
> -- Original Message --
> From "Jean Abou Samra" 
> To "Steph Phillips" ; "Graham King"
> ; "N. Andrew Walsh" 
> Cc "Lilypond-User Mailing List" 
> Date 5/6/2024 7:00:17 AM
> Subject Re: Re[2]: Frescobaldi?
>
> >
> >>  Hey all, I've been looking over the Frescobaldi codebase for the last
> >>  few days, and it seems to be within the realm of something I could pick
> >>  up maintenance for.
> >>
> >>  There would definitely be a learning curve, so hopefully it doesn't
> >>  reach it's EOL too soon... But, I don't know, I feel pretty confident.
> >>
> >>  Not really sure what more info I can contribute to the public discourse
> >>  at this point, but I welcome anyone else interested with the upkeep of
> >>  Frescobaldi to get in touch with me so we can coordinate~
> >
> >
> >
> >I'd encourage you to start by fixing some small issues to get acquainted
> >with the code. Then if you want to do the Qt 6 port, work on a branch
> >and make it public so I (for example) can have a look (don't wait for
> >having finished the port before seeking feedback).
> >
> >Thanks,
> >Jean
> >
> >
>



Re: Re[4]: Frescobaldi?

2024-05-06 Thread Jean Abou Samra
Le lundi 06 mai 2024 à 14:05 +, Steph Phillips a écrit :
> Well, I'm glad you asked about feedback because I'm curious what other 
> folks who contribute to Frescobaldi might think.
> 
> After digging around in the codebase, I'm wondering if the application 
> might benefit from a more object-oriented design. It's definitely in 
> Python, but with more of C-style approach. You've worked on it, you know 
> what I'm talking about. Was wondering what your thoughts are.


I wouldn't focus on large-scale refactorings that will only pay off on the
long term without first (1) doing smaller things to get used to the code and
(2) doing what needs to get done on the short term to be able to do releases
and keep up to date with the rest of the world.



signature.asc
Description: This is a digitally signed message part


Re: Re[4]: Frescobaldi?

2024-05-06 Thread Knute Snortum
On Mon, May 6, 2024 at 7:06 AM Steph Phillips 
wrote:

> Well, I'm glad you asked about feedback because I'm curious what other
> folks who contribute to Frescobaldi might think.
>
> After digging around in the codebase, I'm wondering if the application
> might benefit from a more object-oriented design. It's definitely in
> Python, but with more of C-style approach. You've worked on it, you know
> what I'm talking about. Was wondering what your thoughts are.
>
> Additionally, I was wondering if it might benefit from typehinting
> throughout the codebase to allow for easier maintenance and plugin
> development.
>
> Thoughts? ♥
>

I'm an intermediate-level python programmer but I might be able to help
with busy work like typing and documenting functions, with some feedback.
Anything to give back to a project that I use all the time!


--
Knute Snortum


Re[4]: Frescobaldi?

2024-05-06 Thread Steph Phillips
Well, I'm glad you asked about feedback because I'm curious what other 
folks who contribute to Frescobaldi might think.


After digging around in the codebase, I'm wondering if the application 
might benefit from a more object-oriented design. It's definitely in 
Python, but with more of C-style approach. You've worked on it, you know 
what I'm talking about. Was wondering what your thoughts are.


Additionally, I was wondering if it might benefit from typehinting 
throughout the codebase to allow for easier maintenance and plugin 
development.


Thoughts? ♥

-- Original Message --

From "Jean Abou Samra" 
To "Steph Phillips" ; "Graham King" 
; "N. Andrew Walsh" 

Cc "Lilypond-User Mailing List" 
Date 5/6/2024 7:00:17 AM
Subject Re: Re[2]: Frescobaldi?




 Hey all, I've been looking over the Frescobaldi codebase for the last
 few days, and it seems to be within the realm of something I could pick
 up maintenance for.

 There would definitely be a learning curve, so hopefully it doesn't
 reach it's EOL too soon... But, I don't know, I feel pretty confident.

 Not really sure what more info I can contribute to the public discourse
 at this point, but I welcome anyone else interested with the upkeep of
 Frescobaldi to get in touch with me so we can coordinate~




I'd encourage you to start by fixing some small issues to get acquainted
with the code. Then if you want to do the Qt 6 port, work on a branch
and make it public so I (for example) can have a look (don't wait for
having finished the port before seeking feedback).

Thanks,
Jean






Re: Re[2]: Frescobaldi?

2024-05-06 Thread Jean Abou Samra

> Hey all, I've been looking over the Frescobaldi codebase for the last 
> few days, and it seems to be within the realm of something I could pick 
> up maintenance for.
> 
> There would definitely be a learning curve, so hopefully it doesn't 
> reach it's EOL too soon... But, I don't know, I feel pretty confident.
> 
> Not really sure what more info I can contribute to the public discourse 
> at this point, but I welcome anyone else interested with the upkeep of 
> Frescobaldi to get in touch with me so we can coordinate~



I'd encourage you to start by fixing some small issues to get acquainted
with the code. Then if you want to do the Qt 6 port, work on a branch
and make it public so I (for example) can have a look (don't wait for
having finished the port before seeking feedback).

Thanks,
Jean




signature.asc
Description: This is a digitally signed message part


RE: Re[2]: Frescobaldi?

2024-05-06 Thread carsonmark
Steph,

Thank you.

Mark

-Original Message-
From: lilypond-user-bounces+carsonmark=ca.rr@gnu.org 
 On Behalf Of Steph Phillips
Sent: Sunday, May 5, 2024 11:46 PM
To: Jean Abou Samra ; Graham King 
; N. Andrew Walsh 
Cc: Lilypond-User Mailing List 
Subject: Re[2]: Frescobaldi?

Hey all, I've been looking over the Frescobaldi codebase for the last few days, 
and it seems to be within the realm of something I could pick up maintenance 
for.

There would definitely be a learning curve, so hopefully it doesn't reach it's 
EOL too soon... But, I don't know, I feel pretty confident.

Not really sure what more info I can contribute to the public discourse at this 
point, but I welcome anyone else interested with the upkeep of Frescobaldi to 
get in touch with me so we can coordinate~

-- Original Message --
>From "Jean Abou Samra"  To "Graham King" 
>; "N. Andrew Walsh" 

Cc "Lilypond-User Mailing List"  Date 5/5/2024 1:37:35 
PM Subject Re: Frescobaldi?

>>  The technical stuff is way over my head, but this reads like the 
>> top-  level description of a GSOC project (in case the mentioned 
>> friend  doesn't take the bait)...
>
>
>
>GSoC projects are nice for doing focused work on some specific part of 
>the code base. For overhauling just about everything, I'd be a lot more 
>skeptical, especially since there will unavoidably be fallout to deal 
>with afterwards in terms of bugs, and that's less nice to do if the 
>person who did the port isn't available after the summer to do that 
>part of the work.




Re: Frescobaldi?

2024-05-06 Thread Jean Abou Samra

> I’m wondering if the Frescobaldi approach is actually working out. Keep in 
> mind that originally Frescobaldi was just a project for adding support for 
> Lilypond to KATE, then it became a KDE parts solution, then it started to do 
> everything itself for more control. And this means you’ll need to maintain and
> develop many components for a niche community. Frescobaldi is essentially a 
> full text editor, solely for Lilypond. And I do not think the Lilypond 
> community is the best place for maintaining a whole text editor.
> 
> This also means you get a weird dependency situation which is hard to 
> maintain. Frescobaldi has a lot of qt-independent functionality, including a 
> reduced Lilypond parser and transformation tools and stuff. And it has a lot 
> of 
> interface stuff. This is the part that depends on qt5, and only one component 
> depends on the poppler integration.
> 
> So maybe instead of trying to maintain this collosus of tools it could make 
> sense to split it up into different parts:
> 
> → An LSP server
> → A transformative toolset
> → An editor using these features
> 
> This way no matter what might happen to Frescobaldi, much of the functionality
> would be still usable. With an LSP server any modern text editor with an LSP 
> client could benefit from understanding Lilypond syntax. And being able to a 
> toolset would make extending editors much more fun.
> 
> And this way the maintainance effort could be split. Maybe the LSP could even 
> become part of Lilypond itself (no need to implement a new parser if you 
> already have one), keeping it always up to date (rather than the always 
> outdated approch we have with Frescobaldi).


Well, what you call the "transformative toolset" is already separated, in the
form of the python-ly package. An LSP server might be nice, but it wouldn't
really take off that much functionality from Frescobaldi. I'd have to check
how advanced the LSP protocol exactly is now, but you definitely can't do
things like the MIDI player, the fonts dialog, or the manuscript viewer through 
LSP.

And of course, if we already have trouble maintaining the software as it is,
finding people to work on that kind of split is not going to be easier :(

Also, you cannot really use the LilyPond parser because it won't parse
LilyPond code without also interpreting it at the same time (e.g., music
functions can be defined dynamically). You don't want to pay the price
of parsing the full file every time a character changes, and you don't
want to lose syntax highlighting as soon as there is a syntax error.



signature.asc
Description: This is a digitally signed message part


Re: how difficult would it be to have “auto-correct spacing” (even for just a single measure)?

2024-05-06 Thread Kieren MacMillan
Hi all,

I found something that seems to work!!
Hope this helps someone else.

Best,
Kieren.

%%%  SNIPPET BEGINS
\version "2.25.11"
\language "english"

\layout {
  line-width = 3.5\in
  ragged-right = ##f
}

accidentalNoWidth = \tweak Accidental.extra-spacing-width #empty-interval \etc

\markup "No accidentals:"
\new Staff \with { \remove Accidental_engraver } <<
  \clef bass \key bf \major
  \voices 1,2 <<
{ f8 f g! f f f f a }  \\
{ bf,8 f e-\tweak extra-offset #'(0.05 . 0) _\markup \with-color #red 
\with-dimensions-from \null \draw-line #'(0 . -38) ef d c bf, c }
  >>
>>

\markup "No tweaks:"
\new Staff <<
  \clef bass \key bf \major
  \voices 1,2 <<
{ f8 f g! f f f f a }  \\
{ bf,8 f e ef d c bf, c }
  >>
>>

\markup "Using \accidentalNoWidth:"
\new Staff <<
  \clef bass \key bf \major
  \voices 1,2 <<
{ f8 f \accidentalNoWidth g! f f f f a }  \\
{ bf,8 f \accidentalNoWidth e! \accidentalNoWidth ef d c bf, c }
  >>
>>
%%%  SNIPPET ENDS
__

My work day may look different than your work day. Please do not feel obligated 
to read or respond to this email outside of your normal working hours.




Re: Frescobaldi?

2024-05-06 Thread Kenneth Flak
An LSP server for lilypond would be awesome! I'm using it all the time for 
coding in neovim, and it's a total game changer.

Best,
Kenneth

Valentin Petzel, May 06, 2024 at 15:23:
> I’m wondering if the Frescobaldi approach is actually working out. Keep in 
> mind that originally Frescobaldi was just a project for adding support for 
> Lilypond to KATE, then it became a KDE parts solution, then it started to do 
> everything itself for more control. And this means you’ll need to maintain 
> and 
> develop many components for a niche community. Frescobaldi is essentially a 
> full text editor, solely for Lilypond. And I do not think the Lilypond 
> community is the best place for maintaining a whole text editor.
>
> This also means you get a weird dependency situation which is hard to 
> maintain. Frescobaldi has a lot of qt-independent functionality, including a 
> reduced Lilypond parser and transformation tools and stuff. And it has a lot 
> of 
> interface stuff. This is the part that depends on qt5, and only one component 
> depends on the poppler integration.
>
> So maybe instead of trying to maintain this collosus of tools it could make 
> sense to split it up into different parts:
>
> → An LSP server
> → A transformative toolset
> → An editor using these features
>
> This way no matter what might happen to Frescobaldi, much of the 
> functionality 
> would be still usable. With an LSP server any modern text editor with an LSP 
> client could benefit from understanding Lilypond syntax. And being able to a 
> toolset would make extending editors much more fun.
>
> And this way the maintainance effort could be split. Maybe the LSP could even 
> become part of Lilypond itself (no need to implement a new parser if you 
> already have one), keeping it always up to date (rather than the always 
> outdated approch we have with Frescobaldi).
>
> Cheers,
> Valentin
>
> Am Sonntag, 5. Mai 2024, 22:37:35 MESZ schrieb Jean Abou Samra:
> > > The technical stuff is way over my head, but this reads like the top-
> > > level description of a GSOC project (in case the mentioned friend
> > > doesn't take the bait)...
> > 
> > GSoC projects are nice for doing focused work on some specific part
> > of the code base. For overhauling just about everything, I'd be a lot
> > more skeptical, especially since there will unavoidably be fallout
> > to deal with afterwards in terms of bugs, and that's less nice to do
> > if the person who did the port isn't available after the summer to
> > do that part of the work.






Re: Frescobaldi?

2024-05-06 Thread Valentin Petzel
I’m wondering if the Frescobaldi approach is actually working out. Keep in 
mind that originally Frescobaldi was just a project for adding support for 
Lilypond to KATE, then it became a KDE parts solution, then it started to do 
everything itself for more control. And this means you’ll need to maintain and 
develop many components for a niche community. Frescobaldi is essentially a 
full text editor, solely for Lilypond. And I do not think the Lilypond 
community is the best place for maintaining a whole text editor.

This also means you get a weird dependency situation which is hard to 
maintain. Frescobaldi has a lot of qt-independent functionality, including a 
reduced Lilypond parser and transformation tools and stuff. And it has a lot of 
interface stuff. This is the part that depends on qt5, and only one component 
depends on the poppler integration.

So maybe instead of trying to maintain this collosus of tools it could make 
sense to split it up into different parts:

→ An LSP server
→ A transformative toolset
→ An editor using these features

This way no matter what might happen to Frescobaldi, much of the functionality 
would be still usable. With an LSP server any modern text editor with an LSP 
client could benefit from understanding Lilypond syntax. And being able to a 
toolset would make extending editors much more fun.

And this way the maintainance effort could be split. Maybe the LSP could even 
become part of Lilypond itself (no need to implement a new parser if you 
already have one), keeping it always up to date (rather than the always 
outdated approch we have with Frescobaldi).

Cheers,
Valentin

Am Sonntag, 5. Mai 2024, 22:37:35 MESZ schrieb Jean Abou Samra:
> > The technical stuff is way over my head, but this reads like the top-
> > level description of a GSOC project (in case the mentioned friend
> > doesn't take the bait)...
> 
> GSoC projects are nice for doing focused work on some specific part
> of the code base. For overhauling just about everything, I'd be a lot
> more skeptical, especially since there will unavoidably be fallout
> to deal with afterwards in terms of bugs, and that's less nice to do
> if the person who did the port isn't available after the summer to
> do that part of the work.



signature.asc
Description: This is a digitally signed message part.


Re[2]: Frescobaldi?

2024-05-06 Thread Steph Phillips
Hey all, I've been looking over the Frescobaldi codebase for the last 
few days, and it seems to be within the realm of something I could pick 
up maintenance for.


There would definitely be a learning curve, so hopefully it doesn't 
reach it's EOL too soon... But, I don't know, I feel pretty confident.


Not really sure what more info I can contribute to the public discourse 
at this point, but I welcome anyone else interested with the upkeep of 
Frescobaldi to get in touch with me so we can coordinate~


-- Original Message --

From "Jean Abou Samra" 
To "Graham King" ; "N. Andrew Walsh" 


Cc "Lilypond-User Mailing List" 
Date 5/5/2024 1:37:35 PM
Subject Re: Frescobaldi?


 The technical stuff is way over my head, but this reads like the top-
 level description of a GSOC project (in case the mentioned friend
 doesn't take the bait)...




GSoC projects are nice for doing focused work on some specific part
of the code base. For overhauling just about everything, I'd be a lot
more skeptical, especially since there will unavoidably be fallout
to deal with afterwards in terms of bugs, and that's less nice to do
if the person who did the port isn't available after the summer to
do that part of the work.