Spis treści
Speller literowy
Aplikacja będąca klawiaturą do pisania, z wprowadzaniem znaków w oparciu o skanowanie pól i wejście 0 - 1 (np. naciśnięcie przycisku).
Przegląd różnych rozwiązań, w tym takich dostępnych na rynku, z komentarzem i propozycjami:
Pole tekstowe
Panel, w którym wyświetlany jest wprowadzany tekst.
Istotne rzeczy:
- widoczne co najmniej 2 wiersze tekstu, bieżący i poprzedni
- po dojściu do końca ostatniej linii, pierwszy wiersz od góry nie powinien znikać nagle i że wszystko przeskakuje i nie wiadomo gdzie co jest, tylko się powoli przewijać
- czcionka bezszeryfowa, np Arial
- nie urywać słowa przy końcu linii
- pytanie na ile można zwiększyć rozmiar panelu kosztem całej reszty, tak żeby był widoczny i wygodny dla wszystkich użytkowników
Litery
Ilość pól z literami (i najbardziej równomierna konfiguracja, rzędy x kolumny) w zależności od tego co dokładnie ma być na planszy:
- 32 (4 x 8)- standardowy polski alfabet:
a | ą | b | c | ć | d | e | ę | f | g | h | i | j | k | l | ł | m | n | ń | o | ó | p | r | s | ś | t | u | w | y | z | ź | ż |
---|
- 35 (5 x 7)- jak powyżej plus "nie-polskie":
q | v | x |
---|
- 39 lub 42 (? lub 6 x 7)- jedno z powyższych plus dwuznaki:
rz | sz | dż | dź | dz | cz | ch |
---|
Częstość występowania liter w j. polskim wg Korpusu IPI PAN:
a | i | o | e | z | n | r |
---|---|---|---|---|---|---|
8,91% | 8,21% | 7,75% | 7,66% | 5,64% | 5,52% | 4,69% |
w | s | t | c | y | k | d |
4,65% | 4,32% | 3,98% | 3,96% | 3,76% | 3,51% | 3,25% |
p | m | u | j | l | ł | b |
3,13% | 2,80% | 2,50% | 2,28% | 2,10% | 1,82% | 1,47% |
g | ę | h | ą | ó | ż | ś |
1,42% | 1,11% | 1,08% | 0,99% | 0,85% | 0,83% | 0,66% |
ć | f | ń | q | ź | v | x |
0,40% | 0,30% | 0,20% | 0,14% | 0,06% | 0,04% | 0,02% |
Na podstawie powyższej tabeli i zakładając, że skanowanie idzie z góry na dół i z lewa na prawo, to takie konfiguracje powinny dać możliwie dużą prędkość pisania (dodatkowo im litera częstsza tym jest wyżej):
- alfabet standardowy:
a | i | e | r | c | p | l | ę |
---|---|---|---|---|---|---|---|
o | z | w | y | m | ł | h | ż |
n | s | k | u | b | ą | ś | f |
t | d | j | g | ó | ć | ń | ź |
- jak powyżej plus q, v, x:
a | i | e | r | c | m | b |
---|---|---|---|---|---|---|
o | z | w | y | u | g | ó |
n | s | k | j | ę | ż | f |
t | d | l | h | ś | ń | ź |
p | ł | ą | ć | q | v | x |
Pola funkcyjne
Pola, po wybraniu których aplikacja podejmuje jakąś akcję, związaną czy to z wprowadzaniem tekstu czy z nawigacją po oknie programu.
Przyciski
Niezbędne albo co najmniej bardziej potrzebne wydają się:
- wyjdź (z aplikacji spellera)
- spacja
- przeczytaj (syntezator)
- usuń ostatnią wprowadzoną literę
- znaki specjalne (/interpunkcja/cyfry/potrzebne zwroty)
- usuń wszystko
Razem 6 pól.
Inne:
- przejdź do nowej linii
- zapisz do pliku
- wykorzystaj wprowadzony tekst inaczej (w innej aplikacji, np wyślij mailem)
- wczytaj zapisany wcześniej tekst z pliku
- przewiń tekst w polu tekstowym do góry lub do dołu
- cofnij kursor
- zmień typ liter (pisane/duże)
- zatrzymaj skanowanie
- włącz sprawdzanie pisowni
- usuń ostatni wprowadzony wyraz
Włączając "Inne"- 7 pól.
Pola funkcyjne powinny być skanowane najpierw jako jeden rząd/kolumna, żeby nie wydłużać niepotrzebnie.
Sugerowane (przeze mnie) ustawienie przycisków, w ostatnim rzędzie pod literami, w kolejności od najbardziej potrzebnego po lewej:
spacja | usuń ostatnią | przeczytaj | znaki specjalne | inne | usuń wszystko | wyjdź |
---|
Działanie
Co może się dziać po wybraniu któregoś z przycisków i jak ma to być realizowane:
Ad. 1. Wyjście ze spellera i powrót do okna głównego programu albo okna innej aplikacji, z poziomu której został uruchomiony. Gdy w polu tekstowym jest wpisany jakiś tekst, można dodać okno dialogowe z ostrzeżeniem i pytaniem czy na pewno chce się wyjść, czy może najpierw zapisać tekst do pliku.
Ad. 2. Wstawienie spacji.
Ad. 3. Czytanie tekstu przez syntezator mowy. Ewentualnie też zapisanie nagrania dźwiękowego do pliku albo jakaś inna czynność.
Ad. 4. Skasowanie jednego znaku.
Ad. 5. Podmiana liter w polach na znaki specjalne. Po przejściu do nowego panelu przycisk "znaki specjalne" zmienia się na "litery". Podstawowe znaki (przecinek, kropka)/kilka cyfr/najpotrzebniejsze zwroty opcjonalnie w głównym panelu razem z literami.
Ad. 6. Wyczyszczenie całego pola tekstowego. Dość ryzykowne, żeby uniknąć niemiłych konsekwencji po przypadkowym kliknięciu w ten przycisk, skasowanie tekstu najlepiej poprzedzić oknem dialogowym z pytaniem czy jest się tego pewnym. Ewentualnie zasugerowanie możliwości zapisu tekstu do pliku.
Inne:
Nadmiarowe przyciski funkcyjne pod polem "Inne". Po wybraniu mogą pojawiać się w rzędzie pól funkcyjnych, zastępując te podstawowe albo na całej planszy zastępując pola z literami albo też w mniejszym oknie wyświetlanym na środku ekranu na tle spellera. Wtedy tło lekko przygaszone. W przypadku pól wymagających trwałego podświetlenia w trakcie wykonywania innych czynności, pole takie może na ten czas przepływać i ustawiać się gdzieś z boku w głównym oknie spellera.
Ad. 7. Wymuszenie przejścia z kursorem do nowej linii, nawet jeśli nie doszło się jeszcze do końca okna. Niektórzy z przyszłych użytkowników chcą pisać wiersze, a bez tego nie da rady.
Ad. 8. Zapis wprowadzonego tekstu do pliku. Użytkownik powinien mieć możliwość samodzielnego nadawania nazw plikom. Trzeba go w jakiś sposób o tym powiadomić, np poprzez okno z poleceniem żeby określił nazwę. Można i bez tego, wtedy tylko w polu tekstowym pojawia się nieusuwalny napis "nazwa pliku: ", dalej trzeba wpisać nazwę, a jednocześnie gdzieś w oknie programu widoczny jest jakiś znak lub symbol (np trwałe podświetlenie pola nr 8) informujący, że jest się w trakcie zapisywania pliku. Napis mógłby też być usuwalny, wtedy wykasowanie go powoduje zniknięcie symbolu i powrót do trybu zwykłego pisania. Powrót do zwykłego trybu także poprzez powtórne wybranie opcji nr 8.
Ad. 9. Wykorzystanie tekstu w inny sposób. Np wysłanie jako email, wtedy określanie nadawcy (tu bardziej okno z książką adresową) i tytułu wiadomości w sposób analogiczny jak dla zapisu plików. Zależne od powiązania spellera z innymi aplikacjami.
Ad. 10. Funkcja niezależna od aplikacji wczytującej pliki w postaci e-booków, tekst z pliku pojawia się w polu tekstowym i można go dalej edytować. W takiej sytuacji po wybraniu opcji zapisu, program pyta czy ma nadpisać stary plik czy utworzyć nowy. Folder z plikami do wyboru, w postaci nazw w kafelkach, pojawia się jako nowe okno na tle liter lub w głównym panelu zamiast nich.
Ad. 11. Umożliwienie użytkownikowi powrotu do ukrytego tekstu, bez przenoszenia kursora, tylko odczyt. Po wybraniu funkcji, okno zaczyna przewijać się do góry, z boku suwak pokazujący postęp, kliknięcie zatrzymuje ruch (ewentualnie przewinięcie od razu do samej góry). Po kolejnym kliknięciu okno idzie w dół, a przy braku reakcji i dojściu do samego dołu opcja dezaktywuje się.
Ad. 12. Funkcja przestawiająca kursor w wybrane miejsce. Umożliwi poprawienie popełnionego wcześniej błędu. Po wybraniu przycisku, na początku może pojawić się pasek odliczający czas, pozwalający użytkownikowi przygotować się, następnie kursor rozpoczyna ruch do góry, przechodząc do kolejnych wierszy. W ten sposób, kliknięciem, użytkownik wybiera wiersz, a kursor zaczyna przesuwać się po wybranej linii w prawo, przeskakując co literę. Kliknięcie wybiera konkretne miejsce. Po dojściu do końca wiersza kursor przechodzi automatycznie do kolejnego, jeśli użytkownik spóźnił się o jeden wiersz to w ten sposób może do niego wrócić. Jeśli kursor dojdzie do wiersza pierwszego od góry bez reakcji ze strony użytkownika to zaczyna ruch z powrotem, w dół po wierszach, a jeśli wróci na sam dół, opcja nr 12 dezaktywuje się. Po ustawieniu kursora w jakimś miejscu, aktywuje się tryb zwykłego pisania (przycisk nr 12 cały czas podświetlony), a powtórne wybranie opcji nr 12 przenosi kursor na sam dół (nie nagle, także przewijanie, tylko szybsze) i dezaktywuje funkcję. Dobrze, żeby podczas przewijania tekstu widoczny był przynajmniej jeden wiersz powyżej lub poniżej tego, gdzie aktualnie jest kursor. (<--- propozycja)
Ad. 13. Litery w polach przestawiają się z pisanych na drukowane lub na odwrót, bez zmiany planszy. Ewentualnie zamiast tego, zmiana ostatniego wprowadzonego znaku (jeśli jest literą) na duży lub mały albo też trwałe podświetlenie przycisku i wszystkie kolejno wprowadzane litery pojawiają się jako pisane/drukowane. Powtórne wybranie opcji- dezaktywacja.
Ad. 14. Skanowanie zatrzymuje się, przycisk nr 14 trwale podświetlony, kliknięcie uruchamia z powrotem. Opcjonalnie automatyczne zatrzymanie skanowania, po kilkukrotnym przejściu planszy z góry na dół bez podjęcia żadnej akcji. Wtedy też przycisk podświetla się i czeka.
Ad. 15. Włącza lub wyłącza sprawdzanie poprawności wprowadzanych słów. Podkreśla wyrazy, których nie ma w słowniku, czerwoną falowaną linią (na przykład), jak w edytorach. Tutaj raczej nie ma konieczności żeby pole nr 15 było trwale podświetlone.
Ad. 16. Wymazuje cały wyraz, rozumiany jako blok znaków nieprzedzielonych spacją. Bardziej efektywne w przypadku zauważenie błędu na początku długiego słowa.