mirror of
				https://github.com/Alamantus/Lexiconga.git
				synced 2025-11-04 10:17:01 +01:00 
			
		
		
		
	Fix IPA field help rendering; Use arrows in usage.html
This commit is contained in:
		
							parent
							
								
									7221a094bc
								
							
						
					
					
						commit
						47964bcd53
					
				
					 3 changed files with 46 additions and 45 deletions
				
			
		| 
						 | 
				
			
			@ -9,17 +9,17 @@ that allow you to type any IPA symbol with only a standard keyboard.</p>
 | 
			
		|||
<li>
 | 
			
		||||
<p>Many symbols that look similar to letters of the English alphabet (such as
 | 
			
		||||
small caps) can be produced by doubling the capital letter:</p>
 | 
			
		||||
<pre><code>  GG -> ɢ   ?? -> ʔ   NN -> ɴ   BB -> ʙ   RR -> ʀ   XX -> χ
 | 
			
		||||
  LL -> ʟ   II -> ɪ   YY -> ʏ   UU -> ʊ   EE -> ɛ   OO -> ɞ
 | 
			
		||||
  AA -> ɑ   '' -> ˈ   ,, -> ˌ   :: -> ː
 | 
			
		||||
<pre><code>  GG → ɢ   ?? → ʔ   NN → ɴ   BB → ʙ   RR → ʀ   XX → χ
 | 
			
		||||
  LL → ʟ   II → ɪ   YY → ʏ   UU → ʊ   EE → ɛ   OO → ɞ
 | 
			
		||||
  AA → ɑ   '' → ˈ   ,, → ˌ   :: → ː
 | 
			
		||||
</code></pre>
 | 
			
		||||
</li>
 | 
			
		||||
<li>
 | 
			
		||||
<p>The slash is used to "reflect," "rotate," or otherwise flip around a given
 | 
			
		||||
symbol:</p>
 | 
			
		||||
<pre><code>  ʀ/ -> ʁ   ʔ/ -> ʕ   ?/ -> ʕ   r/ -> ɹ   y/ -> ʎ   m/ -> ɯ
 | 
			
		||||
  o/ -> ø   e/ -> ə   ɛ/ -> ɜ   c/ -> ɔ   a/ -> ɐ   ɑ/ -> ɒ
 | 
			
		||||
  w/ -> ʍ   h/ -> ɥ   k/ -> ʞ   !/ -> ¡   v/ -> ʌ
 | 
			
		||||
<pre><code>  ʀ/ → ʁ   ʔ/ → ʕ   ?/ → ʕ   r/ → ɹ   y/ → ʎ   m/ → ɯ
 | 
			
		||||
  o/ → ø   e/ → ə   ɛ/ → ɜ   c/ → ɔ   a/ → ɐ   ɑ/ → ɒ
 | 
			
		||||
  w/ → ʍ   h/ → ɥ   k/ → ʞ   !/ → ¡   v/ → ʌ
 | 
			
		||||
</code></pre>
 | 
			
		||||
<p>Also note that for any digraph, if either of the two characters that
 | 
			
		||||
compose it are not "standard" letters you can find on your keyboard, the
 | 
			
		||||
| 
						 | 
				
			
			@ -35,26 +35,26 @@ visual <code>o|</code> and <code>|o</code>.</p>
 | 
			
		|||
characters, or two characters next to each other. This includes "hooked"
 | 
			
		||||
letters (such as ŋ), produced with the original letter and a comma, and
 | 
			
		||||
"stroked" letters (such as ɟ), produced with the original letter and a dash:</p>
 | 
			
		||||
<pre><code>  m, -> ɱ   n, -> ŋ   ŋ, -> ɲ   v, -> ⱱ   c, -> ç   j, -> ʝ
 | 
			
		||||
  x, -> ɣ   ɣ, -> χ   h, -> ɦ   w, -> ɰ
 | 
			
		||||
<pre><code>  m, → ɱ   n, → ŋ   ŋ, → ɲ   v, → ⱱ   c, → ç   j, → ʝ
 | 
			
		||||
  x, → ɣ   ɣ, → χ   h, → ɦ   w, → ɰ
 | 
			
		||||
 | 
			
		||||
  j- -> ɟ   h- -> ħ   l- -> ɬ   i- -> ɨ   u- -> ʉ   e- -> ɘ
 | 
			
		||||
  o- -> ɵ   ʕ- -> ʢ   ?- -> ʡ   ʔ- -> ʡ
 | 
			
		||||
  j- → ɟ   h- → ħ   l- → ɬ   i- → ɨ   u- → ʉ   e- → ɘ
 | 
			
		||||
  o- → ɵ   ʕ- → ʢ   ?- → ʡ   ʔ- → ʡ
 | 
			
		||||
 | 
			
		||||
  LZ -> ɮ   OX -> ɤ   XO -> ɤ   OE -> œ   EB -> ɞ   AE -> æ
 | 
			
		||||
  CE -> ɶ   RL -> ɺ   LR -> ɺ   ɾl -> ɺ   lɾ -> ɺ
 | 
			
		||||
  LZ → ɮ   OX → ɤ   XO → ɤ   OE → œ   EB → ɞ   AE → æ
 | 
			
		||||
  CE → ɶ   RL → ɺ   LR → ɺ   ɾl → ɺ   lɾ → ɺ
 | 
			
		||||
 | 
			
		||||
  w| -> ɰ   o/ -> ø   ɜ( -> ɞ   /\ -> ʌ   o| -> ɑ   a| -> ɑ
 | 
			
		||||
  |o -> ɒ   |a -> ɒ
 | 
			
		||||
  w| → ɰ   o/ → ø   ɜ( → ɞ   /\ → ʌ   o| → ɑ   a| → ɑ
 | 
			
		||||
  |o → ɒ   |a → ɒ
 | 
			
		||||
 | 
			
		||||
  o. -> ʘ   |= -> ǂ   || -> ‖   /^ -> ↗   /> -> ↗   \v -> ↘
 | 
			
		||||
  \> -> ↘
 | 
			
		||||
  o. → ʘ   |= → ǂ   || → ‖   /^ → ↗   /> → ↗   \v → ↘
 | 
			
		||||
  \> → ↘
 | 
			
		||||
</code></pre>
 | 
			
		||||
</li>
 | 
			
		||||
<li>
 | 
			
		||||
<p>Others are based on pronunciation:</p>
 | 
			
		||||
<pre><code>  PH -> ɸ   BH -> β   TH -> θ   DH -> ð   SH -> ʃ   ZH -> ʒ
 | 
			
		||||
  SJ -> ɕ   ZJ -> ʑ   ʃx -> ɧ   xʃ -> ɧ
 | 
			
		||||
<pre><code>  PH → ɸ   BH → β   TH → θ   DH → ð   SH → ʃ   ZH → ʒ
 | 
			
		||||
  SJ → ɕ   ZJ → ʑ   ʃx → ɧ   xʃ → ɧ
 | 
			
		||||
</code></pre>
 | 
			
		||||
<p>It may be worth noting at this point that digraphs of two lowercase letters
 | 
			
		||||
were intentionally avoided to prevent interference with regular typing. If
 | 
			
		||||
| 
						 | 
				
			
			@ -66,7 +66,7 @@ to the second character.</p>
 | 
			
		|||
</li>
 | 
			
		||||
<li>
 | 
			
		||||
<p>A few digraphs are based on shape:</p>
 | 
			
		||||
<pre><code>  rO -> ɾ   r0 -> ɾ   vO -> ʋ   v0 -> ʋ
 | 
			
		||||
<pre><code>  rO → ɾ   r0 → ɾ   vO → ʋ   v0 → ʋ
 | 
			
		||||
</code></pre>
 | 
			
		||||
<p>Another related point: digraphs that contain a lowercase letter can also be
 | 
			
		||||
typed with that letter as uppercase. So, if <code>RO</code> is easier to type than
 | 
			
		||||
| 
						 | 
				
			
			@ -75,35 +75,35 @@ typed with that letter as uppercase. So, if <code>RO</code> is easier to type th
 | 
			
		|||
<li>
 | 
			
		||||
<p>Retroflex and nonpulmonic symbols have their own categories:</p>
 | 
			
		||||
<pre><code>  retroflex: ) looks like the shape of the tongue
 | 
			
		||||
  t) -> ʈ   d) -> ɖ   n) -> ɳ   r) -> ɽ   ɾ) -> ɽ   s) -> ʂ
 | 
			
		||||
  z) -> ʐ   ɹ) -> ɻ   l) -> ɭ   ɗ) -> ᶑ
 | 
			
		||||
  t) → ʈ   d) → ɖ   n) → ɳ   r) → ɽ   ɾ) → ɽ   s) → ʂ
 | 
			
		||||
  z) → ʐ   ɹ) → ɻ   l) → ɭ   ɗ) → ᶑ
 | 
			
		||||
 | 
			
		||||
  clicks: clicking noise reminiscent of a *
 | 
			
		||||
  o* -> ʘ   |* -> ǀ   !* -> ǃ   =* -> ǁ
 | 
			
		||||
  o* → ʘ   |* → ǀ   !* → ǃ   =* → ǁ
 | 
			
		||||
 | 
			
		||||
  implosives and ejective marker: direction of airflow
 | 
			
		||||
  b( -> ɓ   d( -> ɗ   j( -> ʄ   ɟ( -> ʄ   g( -> ɠ   ɢ( -> ʛ
 | 
			
		||||
  ɖ( -> ᶑ   ') -> ʼ
 | 
			
		||||
  b( → ɓ   d( → ɗ   j( → ʄ   ɟ( → ʄ   g( → ɠ   ɢ( → ʛ
 | 
			
		||||
  ɖ( → ᶑ   ') → ʼ
 | 
			
		||||
</code></pre>
 | 
			
		||||
</li>
 | 
			
		||||
<li>
 | 
			
		||||
<p>Superscripts and diacritics that go above the letter use <code>^</code>, diacritics that
 | 
			
		||||
go below use <code>_</code>, and miscellaneous "moved" symbols
 | 
			
		||||
use <code><</code> or <code>></code>:</p>
 | 
			
		||||
<pre><code>  ^h -> ʰ   ^n -> ⁿ   ^m -> ᵐ   ^ŋ -> ᵑ   ^l -> ˡ   ^w -> ʷ
 | 
			
		||||
  ^j -> ʲ   ^ɥ -> ᶣ   ^ʋ -> ᶹ   ^ɣ -> ˠ   ^ʕ -> ˤ
 | 
			
		||||
<pre><code>  ^h → ʰ   ^n → ⁿ   ^m → ᵐ   ^ŋ → ᵑ   ^l → ˡ   ^w → ʷ
 | 
			
		||||
  ^j → ʲ   ^ɥ → ᶣ   ^ʋ → ᶹ   ^ɣ → ˠ   ^ʕ → ˤ
 | 
			
		||||
 | 
			
		||||
  _| -> ◌̩   ^| -> ◌̍   _o -> ◌̥   ^o -> ◌̊   _v -> ◌̬   ^v -> ◌̌
 | 
			
		||||
  _| → ◌̩   ^| → ◌̍   _o → ◌̥   ^o → ◌̊   _v → ◌̬   ^v → ◌̌
 | 
			
		||||
 | 
			
		||||
  _^ -> ◌̯   _: -> ◌̤   _~ -> ◌̰   _[ -> ◌̪   _] -> ◌̺   _{ -> ◌̼
 | 
			
		||||
  _+ -> ◌̟   __ -> ◌̠   _) -> ◌̹   _( -> ◌̜   _# -> ◌̻   [] -> ◌̻
 | 
			
		||||
  _^ → ◌̯   _: → ◌̤   _~ → ◌̰   _[ → ◌̪   _] → ◌̺   _{ → ◌̼
 | 
			
		||||
  _+ → ◌̟   __ → ◌̠   _) → ◌̹   _( → ◌̜   _# → ◌̻   [] → ◌̻
 | 
			
		||||
 | 
			
		||||
  ^> -> ◌̚   ^: -> ◌̈   ^x -> ◌̽   ^~ -> ◌̃
 | 
			
		||||
  ^> → ◌̚   ^: → ◌̈   ^x → ◌̽   ^~ → ◌̃
 | 
			
		||||
 | 
			
		||||
  -' -> ˔   _˔ -> ◌̝   -, -> ˕   _˕ -> ◌̞   <| -> ⊣   _⊣ -> ◌̘
 | 
			
		||||
  >| -> ⊢   _⊢ -> ◌̙
 | 
			
		||||
  -' → ˔   _˔ → ◌̝   -, → ˕   _˕ → ◌̞   <| → ⊣   _⊣ → ◌̘
 | 
			
		||||
  >| → ⊢   _⊢ → ◌̙
 | 
			
		||||
 | 
			
		||||
  ~~ -> ◌̴   >r -> ˞
 | 
			
		||||
  ~~ → ◌̴   >r → ˞
 | 
			
		||||
</code></pre>
 | 
			
		||||
<p>Note that all of these sequences can be flipped in order—that is, <code>^h</code>
 | 
			
		||||
produces the same thing as <code>h^</code>. This allows usage such as <code>|<_</code> to produce
 | 
			
		||||
| 
						 | 
				
			
			@ -111,16 +111,16 @@ produces the same thing as <code>h^</code>. This allows usage such as <code>|<
 | 
			
		|||
</li>
 | 
			
		||||
<li>
 | 
			
		||||
<p>Tonal countours use numbers plus <code>|</code>:</p>
 | 
			
		||||
<pre><code>  5| -> ˥   4| -> ˦   3| -> ˧   2| -> ˨   1| -> ˩
 | 
			
		||||
  +| -> ꜛ   -| -> ꜜ
 | 
			
		||||
<pre><code>  5| → ˥   4| → ˦   3| → ˧   2| → ˨   1| → ˩
 | 
			
		||||
  +| → ꜛ   -| → ꜜ
 | 
			
		||||
</code></pre>
 | 
			
		||||
</li>
 | 
			
		||||
<li>
 | 
			
		||||
<p>Finally, some digraphs simply have unique mnemonics:</p>
 | 
			
		||||
<pre><code>  ː-  -> ˑ   "chop off" the bottom triangle
 | 
			
		||||
  ((  -> ◌͡◌  two parens for a tie that connects 2 chars
 | 
			
		||||
  ))  -> ◌͜◌
 | 
			
		||||
  ◌͜◌) -> ‿   one more paren to make it a little bit longer
 | 
			
		||||
<pre><code>  ː-  → ˑ   "chop off" the bottom triangle
 | 
			
		||||
  ((  → ◌͡◌  two parens for a tie that connects 2 chars
 | 
			
		||||
  ))  → ◌͜◌
 | 
			
		||||
  ◌͜◌) → ‿   one more paren to make it a little bit longer
 | 
			
		||||
</code></pre>
 | 
			
		||||
</li>
 | 
			
		||||
</ul>
 | 
			
		||||
| 
						 | 
				
			
			@ -292,6 +292,12 @@ export function renderEditForm(wordId = false) {
 | 
			
		|||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function renderIPAHelp() {
 | 
			
		||||
  import('./KeyboardFire/phondue/usage.html').then(html => {
 | 
			
		||||
    renderInfoModal(html);
 | 
			
		||||
  });
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function renderIPATable(ipaTableButton) {
 | 
			
		||||
  ipaTableButton = typeof ipaTableButton.target === 'undefined' || ipaTableButton.target === '' ? ipaTableButton : ipaTableButton.target;
 | 
			
		||||
  const label = ipaTableButton.parentElement.innerText.replace(/(Field Help|IPA Chart)/g, '').trim();
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,5 @@
 | 
			
		|||
import {showSection, hideDetailsPanel} from './displayToggles';
 | 
			
		||||
import { renderWords, renderEditForm, renderMaximizedTextbox, renderInfoModal, renderIPATable } from './render';
 | 
			
		||||
import { renderWords, renderEditForm, renderMaximizedTextbox, renderInfoModal, renderIPATable, renderIPAHelp } from './render';
 | 
			
		||||
import { confirmEditWord, cancelEditWord, confirmDeleteWord, submitWordForm } from './wordManagement';
 | 
			
		||||
import { openEditModal, saveEditModal, saveAndCloseEditModal, exportDictionary, exportWords, importDictionary, importWords, confirmDeleteDictionary } from './dictionaryManagement';
 | 
			
		||||
import { goToNextPage, goToPreviousPage, goToPage } from './pagination';
 | 
			
		||||
| 
						 | 
				
			
			@ -287,11 +287,6 @@ export function setupIPAButtons() {
 | 
			
		|||
    button.addEventListener('click', renderIPATable);
 | 
			
		||||
  });
 | 
			
		||||
 | 
			
		||||
  const renderIPAHelp = () => {
 | 
			
		||||
    import('./KeyboardFire/phondue/usage.html').then(html => {
 | 
			
		||||
      renderInfoModal(html);
 | 
			
		||||
    });
 | 
			
		||||
  }
 | 
			
		||||
  Array.from(ipaFieldHelpButtons).forEach(button => {
 | 
			
		||||
    button.removeEventListener('click', renderIPAHelp);
 | 
			
		||||
    button.addEventListener('click', renderIPAHelp);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue