Detailed Table of Contents



Regular Table of Contents
Chapter
  1. Humdrum: A Brief Tour
    What Can Humdrum Do?
    The Humdrum Syntax and the Humdrum Toolkit
    Humdrum Syntax
    Humdrum Tools
    Some Sample Commands
    Reprise
  2. Representing Music Using **kern (Part I)
    Comment Records
    Reference Records
    Reprise
  3. Some Initial Processing
    The census Command
    Simple Searches Using the grep Command
    Pattern Locations Using grep -n
    Counting Pattern Occurrences Using grep -c
    Searching for Reference Information
    The sort Command
    The uniq Command
    Options for the uniq Command
    Reprise
  4. Basic Pitch Translations
    ISO Pitch Representation
    German Tonöhe
    French Solfège
    Frequency
    Cents
    Semitones
    MIDI
    Scale Degree
    Pitch Translations
    Transposition Using the trans Command
    Key Interpretations
    Pitch Processing
    Uses for Pitch Translations
    Reprise
  5. The Humdrum Syntax
    Types of Records
    Comment Records
    Interpretation Records
    Data Records
    Data Tokens and Null Tokens
    Data Sub-Tokens
    Spine Paths
    The Humdrum Syntax: A Formal Definition
    The humdrum Command
    Reprise
  6. Representing Music Using **kern (Part II)
    Grace Notes, Gruppetos and Appoggiaturas
    Multiple Stops
    Further Examples
    Reprise
  7. MIDI Output Tools
    The **MIDI Representation
    The midi Command
    The perform Command
    Data Scrolling During Playback
    Changing Tempo
    The tacet Command
    The smf Command
    Reprise
  8. The Shell (I)
    Shell Special Characters
    File Redirection
    Pipe (|)
    Shell Wildcard (*)
    Comment (#)
    Command Delimiter (;)
    Background Command (&)
    Shell Command Syntax
    Output Redirection
    Tee
    Reprise
  9. Searching with Regular Expressions
    Literals
    Wild-Card
    Escape Character
    Repetition Operators
    Context Anchors
    OR Logical Operator
    Character Classes
    Examples of Regular Expressions
    Examples of Regular Expressions in Humdrum
    Basic, Extended, and Humdrum-Extended Regular Expressions
    Reprise
  10. Musical Uses of Regular Expressions
    The grep Command (Again)
    German, French, Italian, and Neapolitan Sixths
    AND-Searches Using the xargs Command
    OR-Searches Using the grep -f Command
    Reprise
  11. Melodic Intervals
    Types of Melodic Intervals
    Melodic Intervals Using the mint Command
    Unvoiced Inner Intervals
    Calculating Distance Intervals Using the mint -s Command
    Simple and Compound Melodic Intervals
    Diatonic Intervals, Absolute Intervals and Contour
    Using the mint Command
    Calculating Melodic Intervals Using the xdelta Command
    Reprise
  12. Selecting Musical Parts and Passages
    Extracting Spines: The extract Command
    Extraction by Interpretation
    Using extract in Pipelines
    Extracting Spines that Meander
    Field-Trace Extracting
    Extracting_Passages: The yank Command
    Yanking by Marker
    Yanking by Delimiters
    Yanking by Section
    Examples Using yank
    Using yank in Pipelines
    Reprise
  13. Assembling Scores
    The cat Command
    The rid Command
    Assembling Parts Using the assemble Command
    Aligning Durations Using the timebase Command
    Assembling N-tuplets
    Checking an Assembled Score Using proof
    Other Uses for the timebase Command
    Additional Uses of assemble and timebase
    Reprise
  14. Stream Editing
    The sed and humsed Commands
    Simple Substitutions
    Selective Elimination of Data
    The stats Command
    Eliminate Everything But...
    Deleting Data Records
    Adding Information
    Multiple Substitutions
    Switching Signifiers
    Executing from a File
    Writing to a File
    Reading a File as Input
    Reprise
  15. Harmonic Intervals
    Types of Harmonic Intervals
    Harmonic Intervals Using the hint Command
    Propagating Data Using the ditto Command
    Using the ditto and hint Commands
    Determining Implicit Harmonic Intervals
    The ydelta Command
    More Examples Using the ydelta Command
    Reprise
  16. The Shell (II)
    Shell Special Characters
    Shell Variables
    The Shell Greve
    Single Quotes, Double Quotes
    Using Shell Variables
    Aliases
    Reprise
  17. Creating Inventories
    Filter, Sort, Count
    Filtering Data with the rid Command
    Inventories for Multi-spine Inputs
    Sorting By Frequency of Occurrence
    Counting with the wc Command
    Excluding or Seeking Rare Events
    Transforming and Editing Inventory Data
    Further Examples
    Reprise
  18. Fingers, Footsteps and Frets
    Heart Beats and Other Esoterica
    The **fret Representation
    Additional Features of **fret
    Reprise
  19. Musical Contexts
    The context Command
    Harmonic Progressions
    Using context with the -b and -e Options
    Using context with sed and humsed
    Linking context Outputs with Inputs
    Using context with the -p Option
    Reprise
  20. Strophes, Verses and Repeats
    Section Labels
    Expansion Lists
    Using yank to Extract Sections
    Using the thru Command to Expand Encodings
    Alternative Versions
    Section Types
    Hierarchical Sections
    Using the yank and thru Commands
    Strophic Representations
    The strophe Command
    Using the strophe and thru Commands
    Reprise
  21. Searching for Patterns
    The patt Command
    Using patt's Tag Option
    Matching Multiple Records Using the patt Command
    The pattern Command
    Patterns of Patterns
    Reprise
  22. Classifying
    The recode Command
    Classifying Intervals
    Clarinet Registers
    Open and Close Position Chords
    Flute Fingering Transitions
    Classifying with humsed
    Classifying Cadences
    Orchestration
    Reprise
  23. Rhythm
    The **recip Representation
    The dur Command
    Classifying Durations
    Using yank with the timebase Command
    The metpos Command
    Changes of Stress
    Reprise
  24. The Shell (III)
    Shell Programs
    Flow of Control: The if Statement
    Flow of Control: The for Statement
    A Script for Identifying Transgressions of Voice-Leading
    (1) Parts Out Of Range
    (2) Augmented/Diminished Melodic Intervals
    (3) Consecutive Fifths or Octaves
    (4) Doubled Leading Tone
    (5) Avoid Unisons
    (6) Crossed Parts
    (7) Parts Separated by Greater than an Octave
    (8) Overlapped Parts
    (9) Exposed Octaves
    Reprise
  25. Similarity
    The correl Command
    Using a Template with correl
    The simil Command
    Defining Edit Penalties
    The accent Command
    Reprise
  26. Moving Signifiers Between Spines
    The rend Command
    The cleave Command
    Creating Mixed Representations
    Reprise
  27. Text and Lyrics
    The **text and **silbe Representations
    The text Command
    The fmt Command
    Rhythmic Feet in Text
    Concordance
    Simile
    Word Painting
    Emotionality
    Other Types of Language Use
    Reprise
  28. Dynamics
    The **dynam and **dyn Representations
    The **dyn Representation
    The **dB Representation
    The db Command
    Processing Dynamic Information
    Terraced Dynamics
    Dynamic Swells
    MIDI Dynamics
    Reprise
  29. Differences and Similarities
    Comparing Files Using cmp
    Comparing Files Using diff
    Comparing Inventories -- The comm Command
    Reprise
  30. MIDI Input Tools
    The record Command
    The encode Command
    Reprise
  31. Repertoires and Links
    The find Command
    Content Searching
    Using find with the xargs Command
    Repertoires As File Links
    Reprise
  32. The Shell (IV)
    The awk Programming Language
    Automatic Parsing of Input Data
    Arithemtic Operations
    Conditional Statements
    Assigning Variables
    Manipulating Character Strings
    The for Loop
    Reprise
  33. Word Sounds
    The **IPA Representation
    Alliteration
    Classifying Phonemes
    Properties of Vowels
    Vowel Coloration
    Rhyme and Rhyme Schemes
    Reprise
  34. Serial Processing
    Pitch-Class Representation
    The pcset Command
    Prime Form and Normal Form
    Interval Vectors Using the iv Command
    Segmentation Using the context Command
    The reihe Command
    Generating a Set Matrix
    Locating and Identifying Tone-Rows
    Reprise
  35. Layers
    Implied Harmony
  36. Sound and Spectra
    The **spect Representation
    The SHARC Database and spect Command
    The mask Command
    The sdiss Command
    Connecting Humdrum with Csound -- the kern2cs Command
    Sound Analysis
    Reprise
  37. Electronic Music Editing
    The Process of Electronic Editing
    Establishing the Goal
    Documenting Encoded Data
    Sources
    Selecting a Sample from Some Repertory
    Encoding
    Transposing Instruments
    Instrument Identification
    Leading Barlines
    Ornamentation
    Editing Sections
    Editorialisms in the **kern Representation
    Adding Reference Information
    Proof-reading Materials
    Data Integrity Using the VTS Checksum Record
    Preparing a Distribution
    Electronic Citation
    Reprise
  38. Systematic Musicology
    Comparison Repertory
    Randomizing
    Using the scramble Command
    Retrograde Controls Using the tac Command
    Autophase Procedure
    Reprise
  39. Troubleshooting
    Encoding Errors
    Searching Tips
    Pipeline Tips
    Reprise
  40. Conclusion
    Pursuing a Project with Humdrum




© Copyright 1999 David Huron