[Zmud 7.21] Formatowanie listów

Forum techniczne Arkadii.
Cerdin
Posty: 18
Rejestracja: 11 lut 2016 07:20

[Zmud 7.21] Formatowanie listów

Post autor: Cerdin »

Ściągnij:
Listy 1.00.rar
(2.33 KiB) Pobrany 334 razy
Paczka zawiera skrypt, instrukcje instalacji i changelog.
Aktualna wersja: 1.00

UWAGA ! --- Skrypt wymaga aktualnej wersji klasy CerdinLib która jest do ściagniecia >>> TUTAJ <<<

Niewielki skrypt, ktory jest w zasadzie wykorzystaniem praktycznym niektorych funkcji z CerdinLib. Składa się nie niego 6 aliasów, pomagających pisać listy:

tj <text>
Wstawia wcięcie 10 znaków na początku i justuje <text> tak by kończył się po 70 znakach od początku linii (czyli miał 60 znaków z 10 pustymi znakami odstępu po każdej stronie, przy założenie max. szerokości linii równej 80 znaków). Wynik zostanie wyświetlony na ekranie (bez wysyłania do muda). Jeżeli <text> będzie zbyt długi by zmieścił się w limicie, zostanie on także wyświetlony ale w kolorze czerwonym.
Wcięcie początkowe i max. długość tekstu po justyfikacji można łatwo zmienić w aliasie.
Alias przydatny, gdy na przykład masz tekst (wcześniej napisany list, książke, ect) podzielony na linie o z grubsza właściwej długości i chcesz go wyjustować by ładnie wyglądał.
Obrazek


tb <text>
Dzieli <text> na linie o długości nie przekraczającej 60 znaków, następnie na wszystkich oprócz ostatniej używa odpowiednika aliasu tj. Tak przygotowany <text> jest WYSYŁANY do bezpośrednio do muda.
Wcięcie początkowe i max. długość tekstu po justyfikacji można łatwo zmienić w aliasie.
Alias przydatny do pisana listów, jako ze spokojnie po tb można napisać cały paragraf, który potem zostanie rozdzielony na poszczególne linie i wysłany.
Obrazek

nagp/nagk
Te aliasy wysyłają odpowiednio początkowy i końcowy nagłówek listu (podziękowania dla Ysar za ich narysowanie). Oba są dość proste ale wystarczające do póki się nie zrobi własnych.
Obrazek

Powyższe aliasy zostały tak spreparowane, by używać ich od razu i uzyskać w miarę ładny list. Aliasy poniżej są bardziej konfigurowalne ale też trzeba pamiętać kolejność wpisywania argumentów.

textjust <wcięcie> <max. dlugość> <text>
Konfigurowalny odpowiednik aliasu tj, w którym można już z linii poleceń ustawić wcięcie po lewej stronie i max. długość napisu. Na wypadek gdy chce się mieć kontrole nad tymi wartościami a nie chce się zmieniać aliasu tj. Przykładowo:
textjust 22 80 <text>
Wyświetli na ekranie tekst z wcięciem od lewej o 22 i wyjustowany tak, by kończył sie na 80 znaku licząc od lewej (czyli szerokość tekstu 58 znaków).

textbreak <wcięcie> <max. dlugość> <text>
Konfigurowalny odpowiednik aliasu tb, w którym można już z linii poleceń ustawić wcięcie po lewej stronie i max. długość napisu.
  • Po użyciu tb ostatnia linia tekstu czasami jest wyjustowana ! Dlaczego ?
Jeszcze nie wiem dlaczego się tak czasami dzieje. Kolejna wersja skryptu to naprawi jeżeli znajdę odpowiedzialny za to kawałek kodu.
  • Napisałem epopeje narodowa, dałem tb przed nią i skrypt się wysypał ! Dlaczego ?
Niestety, wewnętrzne ograniczenia Zmuda powodują, że ten skrypt (tb, textbreak) się wysypie jeżeli po podzieleniu tekstu na linie będzie tych linii ponad 99. Można by to obejść, lecz znacząco ucierpiałaby na tym szybkość działania skryptu. Dla większości zastosowań które sobie mogę wyobrazić jest to wystarczające.
  • Napisałem niewielkie opowiadanie, dałem tj przed nim i skrypt się wysypał ! Dlaczego ?
Niestety, wewnętrzne ograniczenia Zmuda powodują, że ten skrypt (tj, textjust) się wysypie jeżeli po tj będzie więcej niż 97 słów. Można by to obejść, lecz znacząco ucierpiałaby na tym szybkość działania skryptu, a nie znam zastosowania które wymagałoby wyjustowania ponad 90 słów w jednej linii.
  • Coś innego się zepsuło ! Dlaczego ?
Nie mam pojęcia. Napisz tutaj lub na prv co jest nie tak i jak uzyskać taki sam efekt “zepsucia” (jaki tekst użyłeś i jaki alias), a ja postaram się zobaczyć czym jest to spowodowane.
  • Przydał ci się skrypt ?
Napisz tutaj albo daj mi znać na prv.

Skrypt wrzucam na zasadzie 'jak jest', więc nie gwarantuje dalszego jego rozwijania ani poprawiania błędów. Postaram się na ile czas i chęci pozwolą.
ODPOWIEDZ