Jump to content

Open-string harmonics in tablature: Difference between revisions

From LilyPond wiki
m New category
mNo edit summary
Line 1: Line 1:
This snippet demonstrates open-string harmonics.
This snippet demonstrates open-string harmonics.


<lilypond version="2.24" full>
<lilypond version="2.24">
%LSR modified by P.P.Schneider on Feb.2014
% LSR modified by P.P.Schneider on Feb.2014


openStringHarmonics = {
openStringHarmonics = {
Line 10: Line 10:
   \override TextSpanner.dash-period = 1
   \override TextSpanner.dash-period = 1
    
    
   %first harmonic
   % first harmonic
   \override TextSpanner.bound-details.left.text =
   \override TextSpanner.bound-details.left.text =
     \markup\small "1st harm. "
     \markup\small "1st harm. "
Line 16: Line 16:
   \harmonicByRatio #1/2 e,\6\stopTextSpan
   \harmonicByRatio #1/2 e,\6\stopTextSpan
    
    
   %second harmonic
   % second harmonic
   \override TextSpanner.bound-details.left.text =
   \override TextSpanner.bound-details.left.text =
     \markup\small "2nd harm. "
     \markup\small "2nd harm. "
Line 26: Line 26:
   %\harmonicByRatio #2/3 < e,\6 a,\5 d\4 >
   %\harmonicByRatio #2/3 < e,\6 a,\5 d\4 >
    
    
   %third harmonic
   % third harmonic
   \override TextSpanner.bound-details.left.text =
   \override TextSpanner.bound-details.left.text =
     \markup\small "3rd harm. "
     \markup\small "3rd harm. "
Line 35: Line 35:
   \break
   \break
    
    
   %fourth harmonic
   % fourth harmonic
   \override TextSpanner.bound-details.left.text =
   \override TextSpanner.bound-details.left.text =
     \markup\small "4th harm. "
     \markup\small "4th harm. "
Line 45: Line 45:
   \harmonicByRatio #3/5 e,\6\stopTextSpan
   \harmonicByRatio #3/5 e,\6\stopTextSpan
    
    
   %fifth harmonic
   % fifth harmonic
   \override TextSpanner.bound-details.left.text =
   \override TextSpanner.bound-details.left.text =
     \markup\small "5th harm. "
     \markup\small "5th harm. "
Line 52: Line 52:
   \break
   \break
    
    
   %sixth harmonic
   % sixth harmonic
   \override TextSpanner.bound-details.left.text =
   \override TextSpanner.bound-details.left.text =
     \markup\small "6th harm. "
     \markup\small "6th harm. "
Line 58: Line 58:
   \harmonicByRatio #1/7 e,\6\stopTextSpan
   \harmonicByRatio #1/7 e,\6\stopTextSpan
    
    
   %seventh harmonic
   % seventh harmonic
   \override TextSpanner.bound-details.left.text =
   \override TextSpanner.bound-details.left.text =
     \markup\small "7th harm. "
     \markup\small "7th harm. "
Line 64: Line 64:
   \harmonicByRatio #1/8 e,\6\stopTextSpan
   \harmonicByRatio #1/8 e,\6\stopTextSpan
    
    
   %eighth harmonic
   % eighth harmonic
   \override TextSpanner.bound-details.left.text =
   \override TextSpanner.bound-details.left.text =
     \markup\small "8th harm. "
     \markup\small "8th harm. "
Line 73: Line 73:
\score {
\score {
   <<
   <<
     \new Staff  
     \new Staff \with { \omit StringNumber } {
    \with { \omit StringNumber } {
       \new Voice {
       \new Voice {
         \clef "treble_8"
         \clef "treble_8"
Line 87: Line 86:
   >>
   >>
}
}
\paper { tagline = ##f }
</lilypond>
</lilypond>



Revision as of 21:37, 14 December 2025

This snippet demonstrates open-string harmonics.

\version "2.24"

% LSR modified by P.P.Schneider on Feb.2014

openStringHarmonics = {
  \textSpannerDown
  \override TextSpanner.staff-padding = 3
  \override TextSpanner.dash-fraction = 0.3
  \override TextSpanner.dash-period = 1
  
  % first harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "1st harm. "
  \harmonicByFret 12 e,2\6\startTextSpan
  \harmonicByRatio #1/2 e,\6\stopTextSpan
  
  % second harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "2nd harm. "
  \harmonicByFret 7 e,\6\startTextSpan
  \harmonicByRatio #1/3 e,\6
  \harmonicByFret 19 e,\6
  \harmonicByRatio #2/3 e,\6\stopTextSpan
  %\harmonicByFret 19 < e,\6 a,\5 d\4 >
  %\harmonicByRatio #2/3 < e,\6 a,\5 d\4 >
  
  % third harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "3rd harm. "
  \harmonicByFret 5 e,\6\startTextSpan
  \harmonicByRatio #1/4 e,\6
  \harmonicByFret 24 e,\6
  \harmonicByRatio #3/4 e,\6\stopTextSpan
  \break
  
  % fourth harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "4th harm. "
  \harmonicByFret 4 e,\6\startTextSpan
  \harmonicByRatio #1/5 e,\6
  \harmonicByFret 9 e,\6
  \harmonicByRatio #2/5 e,\6
  \harmonicByFret 16 e,\6
  \harmonicByRatio #3/5 e,\6\stopTextSpan
  
  % fifth harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "5th harm. "
  \harmonicByFret 3 e,\6\startTextSpan
  \harmonicByRatio #1/6 e,\6\stopTextSpan
  \break
  
  % sixth harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "6th harm. "
  \harmonicByFret 2.7 e,\6\startTextSpan
  \harmonicByRatio #1/7 e,\6\stopTextSpan
  
  % seventh harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "7th harm. "
  \harmonicByFret 2.3 e,\6\startTextSpan
  \harmonicByRatio #1/8 e,\6\stopTextSpan
  
  % eighth harmonic
  \override TextSpanner.bound-details.left.text =
    \markup\small "8th harm. "
  \harmonicByFret 2 e,\6\startTextSpan
  \harmonicByRatio #1/9 e,\6\stopTextSpan
}

\score {
  <<
    \new Staff \with { \omit StringNumber } {
      \new Voice {
        \clef "treble_8"
        \openStringHarmonics
      }
    }
    \new TabStaff {
      \new TabVoice {
        \openStringHarmonics
      }
    }
  >>
}