OpenLLM-France/wikimedia huggingface dataset:
# Trombone/Keys and Scales
## Key of a Trombone

The traditional straight tenor trombone is written in the key of C,and it is in "Concert Pitch." This means that trombone, unlike many other wind instruments, will have the same notes and note names as a piano.
Many trombones have an "F key" or "F attachment" which adds piping to the trombone allowing it to play in the key of F. This is often used to improve the tuning of the instrument as it gets farther down the scale, or to make faster passages less difficult to play.
Bass Trombones often have two rotors valves which can have an F attachment or a Db attachment. sometimes these can be played at the same time to produce an even lower tone.

## Scales

The trombone can play in any scale, however generally the easiest and most common are the first few flatted keys. Bb, Eb, Ab, Db. These are the keys most commonly played in beginning trombone music.
Scales are often learned in terms of slide position, for example, 2 octaves of the Bb scale would be: 1 6 4 3 1 4 2 1 3 1 3 1 #2 2 1. Gradually, as the player progresses, this should be developed into knowing the notes of the scale as well to encourage the understanding of what they are playing, not just how.
You may notice the notation "#2" in the scale numbers above, this indicates a "short second," the slide is moved slightly closer to the mouthpiece (a process which takes a great deal of practice and good ear) to produce a more in tune note than the "normal" position for the note. Such "short" positions are generally only used in the very upper reaches of a trombone's range. Flat positions are more commonly used for trombonists in the valve or F-attachment range like an E below the staff being in b2 position.
# Trombone/Maintaining the Instrument

Cleaning Your Horn
Whenever you notice that your trombone is excessively dirty, (at least once every two months, depending on amount of use), you should wash your Trombone. To wash the Trombone, you should place the trombone, one piece at a time in a bathtub full of warm soapy water. You should gently scrub it with a soft rag, soaked in the water. Whenever about to go to a concert, competition, or other important event, you should polish the horn with silver polish if the horn is silver, if the horn is brass, you should rinse the dirt off with a wet rag.
# Trombone/Slide Positions

These are the fundamental notes and positions you need to learn.
This slide position chart shows where the bar of the outer slide should be in each position. The top line is valid for all tenor and bass trombones, the second line for all bass trombones and tenor trombones with an F-attachment, and the last line is only for bass trombones.
The notes that are commonly played in each position without any attachments engaged are as follows: 5 y
1: B♭, F, B♭', D', F'
2: A, E, A', C#', E'
3: A♭, E♭, A♭', C', E♭'
4: G$_'$, D, G, B, D' (alt)
5: G♭$_'$, D♭, G♭, B♭' (alt), D♭' (alt)
6: F$_'$, C, F (alt), A' (alt), C' (alt)
7: E$_'$, B, E (alt), G#' (alt), B' (alt)
7: E2/Fb2 B2/Cb2 F#3/Gb3 C#4/Db4 G#4/Ab4
6: E#2/F2 B#3/C3 G3 D4 A4
5: F#2/Gb2 C#3/Db3 G#3/Ab3 D#4/Eb4 A#4/Bb4
4: G2 D3 A3 E4/Fb4 B4/Cb4
3: G#2/Ab2 D#3/Eb3 A#3/Bb3 E#4/F4 B#5/C5
2: A2 E3/Fb3 B3/Cb3 F#4/Gb4 C#5/Db5
1: A#2/Bb2 E#3/F3 B#4/C4 G4 D5
You should notice a pattern.

## F Attachments

Some trombones include an F attachment. The attachment makes the instrument the equivalent of 5 positions longer when the trigger is activated. This allows the player to play 6th position notes in 1st, and 7th position notes in 2nd. The trigger can also extend the range of the instrument by allowing the player to reach lower notes than usually possible by using the trigger beyond 2nd position.
# Trombone/Basic Concepts in Musical Theory

There are four basic aspects of music:
Rhythm
    Deals with note duration, speed and stress — the time aspect
Melody
    Deals with a series of notes — the horizontal aspect.
Harmony
    Deals with notes played concurrently — the vertical aspect.
Timbre
    Deals with the physical sound of notes — the depth aspect.
These, generally speaking, all support each other. The melody is what you generally hear as the dominating sound. The trombone, being a low/medium brass instrument, usually plays the harmony (which is usually the background sound) in most bands and orchestras and the countermelody in jazz and rock groups.

## The Staff

A staff is where the music is written.
On a staff, there a five 'lines' and four 'spaces'. The notes go on the lines or spaces. Many times, you'll have to go high or lower than what's written on the staff. Lines will have to be written to direct you on which note to play. These are ledger lines.

## Clefs

A clef is a symbol used in musical notation that assigns the pitch of notes to lines and spaces on the musical staff. The trombone usually uses the bass clef (F-clef), although eventually you might have to learn the tenor (C-clef) and treble (G-clef) for extended high parts in orchestral music. In the F-clef, the line between 2 dots is the F below middle C. In the C-clef, the line between the two bumps is middle C. In the G-clef, the line encompassed by the little spiral is the G above middle C. These definitions are true no matter where the clef is placed. However, there are certain standard positions for each clef. Bass clef, which is the most common F-clef, defines the second line from the top as the F below middle C. Tenor clef, the C-clef most commonly used for trombones, defines the second line from the top as middle C. Treble clef, the most common G-clef, defines the second line from the bottom as the G above middle C. The only other clef which you are likely to see ever is alto clef, which is a C-clef that defines the middle line as middle C. Alto clef is rarely used except for viola parts and 1st trombone parts in very old orchestral music. However, most of these 1st trombone parts are available in either bass or tenor clef, so as a trombone player, you will probably never need to be proficient reading alto clef.

## Time signature

The time signature (also known as "meter signature") is a notational device used in Western musical notation to specify how many beats are in each bar and what note value constitutes one beat. You'll learn more about that next section.

## Notes

A note is a sign used in music to represent the relative duration and pitch of sound. You'll learn more about that next section.
# Walk-Through of a game turn (using Big World as an example)

* A scenario loosely based on the year 1942 of the global conflict of 1939-1945.
   * In the Pacific, Japan has expanded explosively but faces a turning point at Midway (May 1942).
   * In Europe, Germany has been halted at the gates of Moscow but sill has Leningrad besieged and is on the verge of defeat at Stalingrad (Dec 1942).
# Trombone
## Music Theory Basics

* Basic Concepts in Musical Theory
* Notes
* Keys and Scales

## How to Play

* Holding and Moving the Instrument
* Slide Positions
* Basic Playing Concepts
* Maintaining the Instrument
* Slurs and Ties
* Gliss and Slurs
* Legato Tongue
# Trombone/Gliss and Slurs

Glisses are played when no tongue is used whatsoever. A trombonist will move across the notes being played in their different slide positions without the tongue and with a constant air flow supporting the tones.
# Trombone/Legato Tongue

A legato tongue is a very light tongue when playing trombone. It requires notes to be sustained their full duration, while having quick slide motion. Think of making a small indent in the wall of air passing into the trombone. You don't want to stop air flow or disrupt it but mearly show that it's not a slur being played. Playing staccato is kind of the opposite of legato tongue.
# Trombone/Slurs and Ties

Slurs When playing Slurs you start with a "hard" tongue as though you are playing a note alone, in the process of moving the slur you decrease air as to not glissando, and do a "soft" tongue on the note you slurred to. Ties When playing Ties one must simply hold out the note for the length of time required by the notes in the tie.
# WebObjects/Web Applications/Development/WO Adaptor
### Overview

The WOAdaptor layer of WebObjects can be thought of as a broker of requests and responses. Its role in the framework is to:
* Receive incoming requests of some type (typically HTTP)
* It checks for the configuration file where(host) the requset should be send
* opens TCP/IP socket for destination host
* Package them into a WORequest
* Dispatch the WORequest to the WOApplication
* Receive the WOResponse back from the WOApplication
* Send the response back across whatever protocol the adaptor handles
In most cases, you will be dealing with WODefaultAdaptor, which is provides support for HTTP. However, adaptors could receive requests from any number of sources. As an example, Project WOnder includes ERIMAdaptor, which provides support for requests and responses over Instant Messaging networks.
# WebObjects/Web Applications/Development/WO Component/Binding Synchronization
### WebObjects Wikibooks considered deprecated

Look at http://wiki.objectstyle.org/confluence/display/WO/Web+Applications-Development-WO+Component-Binding+Synchronization instead.

### Overview

When you create a subclass of WOComponent, the default configuration is to have all of your bindings automatically synchronized. Binding synchronization is the process of getting and setting parent and children .wod file bindings during the request-response loop. While binding synchronization is very convenient, the one downside is that your binding get and set methods can be called multiple times (as many as six) during the request-response loop. As a result, you should be careful about potential performance problems inside of get and set methods. If you would rather avoid the potential performance issues, it is possible to disable automatic binding synchronization in your component by simply overriding the synchronizesVariablesWithBindings method to return false as in the below example:
If synchronizesVariablesWithBindings is false, you will use the valueForBinding(bindingName) and setValueForBinding(value, bindingName) methods to get and set the binding value manually.

### WOComponentContent

Because of the way WOComponentContent works, binding is often "backwards" from your intution (often it ends up that your wrapper pushes its title value into your page instead of the other way around). One way to make your template wrapper component behave the way you expect is to turn off automatic binding synchronization:

#### Kieran Kelleher

Have a look at WOComponent API valueForBinding and setValueForBinding methods. In your subcomponent, you can define the API (jigsaw icon in WOBuilder. Use lazy initialization to pull bindings on demand. Subcomponents in general pull from parent and push into parent through bindings. Here is an example of a simple manual pull and push of a 'customer' binding:
Also look at synchronizeVariablesWithBindings to turn on manual binding synchronization (recommended to synchronize on demand rather than 6 times or so through the R-R loop)

#### wojingo

If you use lazy initialization in your binding accessor methods as described above, you should also make the component stateless. If you do not make the component stateless you will find that your component may display incorrect values when used in a WORepetition. This situation occurs when the WORepetition's list is changed via a component action and null is returned. The existing nested component will be reused and the values in the original list will be displayed.
Make the component stateless and override its reset method, setting all instance variables to null. This will make the component behave as expected.
# WebObjects/Web Services/Controlling WSDL Service Location

This documentation was written by Andrew Lindesay (http://www.lindesay.co.nz) in 2006 as part of supported code in the LEWOStuff framework, but this material has been transcribed here. It was written around the time of WebObjects 5.2 and 5.3 on the 1.4 JVM.
AXIS provides a number of handlers for ultimately executing the WS. This generally works in the WebObjects environment out of the box. However, in the case of a servlet deployment, the URLs are manipulated by the servlet container so they look something like this.
If a client starts a session on a WS invocation then you want all subsequent requests to return to this same servlet container (Here we assume a redundant deployment where there are a number of servlet containers.) where the session resides. However the servlet-container's HTTP adaptor typically only knows this by looking at the modified URL. Unfortunately, the default WSDL generated by AXIS would have a section like this.
A WSDL like this does not contain the modified URL caused by the context having a session in the location for the service. The example handler LEWOWebServicesWSDLLocationHandler below which is supplied in LEWOStuff will correct the location supplied in the WSDL to contain the session information. To install this handler for use in WebObjects, locate the server.wsdd file within your project and modify the following section so that it appears as follows.
You then need to put the following class into your project.
Although this is slightly crude, it should produce the correct result in the WSDL.
# WebObjects/Web Services/Common Pitfalls and Troubleshooting
### NullPointerException calling WebService with Axis

If you get an exception like the following:
It's most likely because you are using Java 1.5 with Axis 1.1. If you want your client to run on Java 1.5, you will need to upgrade to Axis 1.2RC2.

### SAXParseException when using HTTPS

If, in WebObjects 5.4.x, you get an exception connecting to your web service via HTTPS (through the WebObjects Apache adaptor) and get an error like the following:
You will need to add additional information to the file server.wsdd to tell Apache AXIS what to do when it believes the transport mechanism is 'https.' AXIS will make this determination based on the HTTP header information forwarded by the Apache WebObjects adaptor. If no entry is made to tell AXIS how to handle 'https', it will assume the incoming data from the adaptor is encrypted via SSL, even though the communication between the adaptor and the instance is in the clear. To change the behavior of AXIS, change the file server.wsdd from:
To:

### Losing Session with Axis Client

For more information about cookie-based sessions with Axis clients, read the Consuming with Axis in Java section.
# WebObjects/Web Services/Controlling Enterprise Object Serialisation

To control what attributes and relationships are serialised for an EO, subclass the WOEnterpriseObjectSerializationStrategy class and create one of your own. You should subclass the method keyPathsForSerialization(...) method and return a list of key paths (aattributes or relationships) that you would like to see serialised with the EO. Finally, to register this with a given web service (that is not D2WS), use something like WOEnterpriseObjectSerializationStrategy.setStrategyForService(new MyEnterpriseObjectSerialisationStrategy,"MyWebService",null); where "MyWebService" is the name that you used to initially register the service with WOWebServiceRegistrar.
# WebObjects/Web Applications/Development/WebObjects and Subversion
### Ryan

Notes about using subversion with WebObjects, Interface Builder, and Mac OS X.
9/2/2005
Versions Used:
* Mac OS X 10.4.2
* subversion 1.2.3
* Interface Builder 2.5.1 (439)
* XCode 2.1
* WebObjects 5.3
Appendices C and D of the Apple XCode User Guide (Using Subversion and Configuring Your SSH Environment) were fairly helpful in getting things set up although I would recommend installing subversion via the download links on the main subversion web page rather than using DarwinPorts. The binary version available via these links is easier to install since it uses a traditional double clickable package installer. Note that your install path will be /usr/local/bin instead of /opt/local/bin.
I also found the book "Version Control with Subversion" by Ben Collins-Sussman, Brian W. Fitzpatrick, and C. Michael Pilato to be very helpful.
* When creating the repository it seems preferable to use the file system rather than the Berkeley DB. To do this, pass the --fs-type fsfs flag to the create command.
For example: svnadmin create --fs-type fsfs /path/to/repos
* There are at least three different ways to authenticate to the repository. I used the svn+ssh method although I'm sure the others would work as well.
* If you use the ssh+svn method, it's helpful to provide a virtual repository path so that end users don't have to type the entire path. For example, in my authorized_keys file, my key begins with:
This allows users to use a path like "svn+ssh://server-name/project-name" rather than "svn+ssh://server-name/Users/svn/svnrep/project-name".
* When using ssh with multiple users, in order to prevent file permission issues, each subversion command on the server should be wrapped by a shell script which first calls umask, ie:
So this means you should rename each command and create a shell script wrapper which calls the actual command.
* If you create trunk, branches, and tags directories as suggested in the book, you should only checkout the trunk.
* The subversion support in XCode has a few problems, and I have had better luck using the free "svnx" which is available on the web.
* Subversion leaves ".svn" directories in each directory that it's managing which causes problems with earlier versions of Interface Builder and EOModeler which delete all of these directories upon save. Make sure you're using the latest version available of each of these tools.
* If you're developing a Java Client program using Interface Builder, your nib file will contain a java file buried under several directories. Each of these directories contains an ".svn" directory which even the newer versions of Interface Builder delete. In order to correct this problem, you'll have to download and install the "SubversionPalette.palette"; from http://www.rtlabs.com/downloads/. Even though this is apparently fairly old, it still seems to work (9/2005).
That's it! Good luck and enjoy subversion.

### Peter Vandoros

I have ported the EOModeler fix from http://www.rtlabs.com/downloads/ to Windows. Get it from http://wocode.com/cgi-bin/WebObjects/WOCode.woa/wa/ShareCodeItem?itemId=451.
# WebObjects/Web Applications/Development/WOEvents and Logging
## NSDebugLevel

These are the available debug levels (WebObjects 5.2.2):
* DebugLevelOff 0
* DebugLevelCritical 1
* DebugLevelInformational 2
* DebugLevelDetailed 3

## NSDebugGroups

Debug groups are defined as flags in a 64-bit array. The value shown in the documentation is the index of the specific debug group flag in this array.
For example, if you want to start the logging of WebObjects and EO debug information you can do:
Or:
You can specify debug groups in a command-line argument, either as a single numerical value (as above), as a list of flags or as a range of flags. For example, all the following are equivalent:
These are the available debug groups (WebObjects 5.2.2):
* DebugGroupApplicationGeneration 3
* DebugGroupArchiving 6
* DebugGroupAssociations 19
* DebugGroupComponentBindings 9
* DebugGroupControllers 20
* DebugGroupComponents 26
* DebugGroupDatabaseAccess 16
* DebugGroupDeployment 22
* DebugGroupEnterpriseObjects 1
* DebugGroupFormatting 10
* DebugGroupIO 13
* DebugGroupJSPServlets 27
* DebugGroupKeyValueCoding 8
* DebugGroupModel 15
* DebugGroupMultithreading 4
* DebugGroupParsing 23
* DebugGroupQualifiers 11
* DebugGroupReflection 24
* DebugGroupRequestHandling 25
* DebugGroupResources 5
* DebugGroupRules 21
* DebugGroupSQLGeneration 17
* DebugGroupTiming 14
* DebugGroupUserInterface 18
* DebugGroupValidation 7
* DebugGroupWebObjects 2
* DebugGroupWebServices 2
# Trigonometry/Circles and Triangles/The Pivot theorem

The pivot theorem states that given any triangle ABC, and any points DEF on BC, AC, AB respectively, then the three circles AEF, BDF and CDE have a common point.
# Trigonometry/Circles and Triangles/The Simson line

Take any triangle ABC and any point P on its circumcircle. Let the perpendiculars from P to AB, BC and CA be D, E and F respectively. (At least one side will need to be produced to meet the perpendicular.) Then D, E and F all lie on a straight line, the Simson line of that point.
This theorem is due to Robert Simson, 1687-1768.
# Trigonometry/Circles and Triangles/Thebault's theorem

Thebault's theorem states that if you take any parallelogram, and construct squares (all pointing outward or all pointing inward) on each side, the centres of the four sides are the four corners of another square.
This theorem was published by Victor Thebault (1882-1960) in 1937.
# Trigonometry/Circles and Triangles/Viviani's theorem

Viviani's theorem is as follows:
Take any point P in an equilateral triangle. Drop perpendiculars from P to the three sides; let their feet be D, E, F. Then whatever the location of P, PD+PE+PF equals the altitude of the triangle.
If P is outside the triangle, this still holds provided that the perpendicular or perpendiculars lying entirely outside the triangle are treated as having negative length.
# Trigonometry/Collection of Problems/Line Values and Graphs of Trigonometric Functions

Using the diagram, answer the following questions:
| 1. | Can you suggest a way of remembering that ${\overrightarrow {AB}}$ represents the tangent of $\theta$? |
| 2. | Can you suggest a way of remembering that ${\overrightarrow {FE}}$ represents the cotangent of $\theta$? |
| 3. | Can you suggest a way of remembering that ${\overrightarrow {OB}}$ represents the secant of $\theta$? |
| 4. | Can you suggest a way of remembering that ${\overrightarrow {OE}}$ represents the cosecant of $\theta$? |
# Trigonometry/Circles and Triangles/The Pedal Triangle

Given any triangle ABC, let the altitudes through each vertex meet the opposite sides at G, H, K respectively. As already noted, the altitudes intersect at the orthocentre O of the triangle. The triangle GHK is the pedal triangle of ABC. O is its incentre, and ABC is its excentral triangle. If ABC is right-angled, the altitudes all pass through the right angle and the pedal triangle is a single point.
In the quadrilateral BKOG, the angles at K and G are by definition right angles, hence BKOG is cyclic; similarly, so are AHOK and CGOH.
If ABC is not an obtuse triangle and its sides are a, b and c, the angles of GHK are 180º-2A, 180º-2B and 180º-2C and its sides are a.cos(A), b.cos(B) and c.cos(C). If the circumradius of ABC is R, we can write the sides as Rsin(2A), Rsin(2B) and Rsin(2A). If ABC is an obtuse triangle, C being the obtuse angle, the angles of GHK are 2A, 2B and 2C-180º, and the third side is -c.cos(C).

## Properties of the pedal triangle

The area of GHK is $^1$⁄$_2$(product of two sides)(sine of included angle) = $^1$⁄$_2$Rsin(2B).Rsin(2C).Rsin(180-2A) = $^1$⁄$_2$R$^2$.sin(2A).sin(2B).sin(2C).
The circumradius of GHK is ${HK \over {2\sin(HGK)}}={{R\sin(2A)} \over {2\sin(180^{0}-2A)}}={R \over 2}.$
The circumcircle of GHK is the nine point circle of ABC.
The perimeter is 4Rsin(A)sin(B)sin(C). The inradius is 2Rcos(A)cos(B)cos(C) and the three exradii are 2Rcos(A)sin(B)sin(C), 2Rsin(A)cos(B)sin(C) and 2Rsin(A)sin(B)cos(C).
    ${\frac {OG}{AG}}+{\frac {OH}{BH}}+{\frac {OK}{CK}}=1$.
If the sides are g, h and j, then
    ${\frac {g}{a^{2}}}+{\frac {h}{b^{2}}}+{\frac {j}{c^{2}}}={\frac {a^{2}+b^{2}+c^{2}}{2abc}}$.
# Trigonometry/Collection of Problems

Collection
* Vectors
* Trigonometric Functions of Angles
* Line Values and Graphs of Trigonometric Functions
* Polar Coordinates
* Complex Numbers
* Fundamental Relations
* Functions of Two Angles
* Solution of Triangles
* Circular Functions
* Inverse Functions
* Complex Numbers and Power Series
* Solution of Triangles
* Radian Measure
* Analytic Trigonometry
* Identities, Equations, and Inequalities
* Composite Angle Identities