Corel FORUM
Forum użytkowników programów firmy Corel. Grafika wektorowa, rastrowa i obróbka zdjęć cyfrowych

Makra - Poszukuję: makro przenoszenia sierot i wdów

Shame - 11 Styczeń 2013, 14:44
Temat postu: Poszukuję: makro przenoszenia sierot i wdów
Witeczka!

Dzisiaj, podczas kolejnej partii pracy z tekstem - dużą ilością tekstu - zaprzątnęła mi głowę myśl o pojawiających się wdowach i sierotach - zaimkach (i, w, a, się) znajdujących się na końcu wersu tuż przez miejscem łamu lub znajdujących się w nowej linii, a będących ostatnim "słowem" w zdaniu.

Wiadomo, że przy niewielkiej ilości tekstu nie jest to problem, bo trzaska się "na wizus" miękkie entery i już! Ale problem pojawia się, jak tekstu jest więcej lub gdy ma się nieregularne obiekty do opływania tymże tekstem. Wtedy przy przesunięciu obiektu zmienia się układ i wszystko szlag jasny trafia.

Dlatego zapytuję Was, towarzysze i towarzyszki! Czy ktoś słyszał może o takim makro, co by ten mankament naprawiało samo?

Bo jak rozumiem, to musiałoby być coś, co przenosi w tekście akapitowym ALBO zaimki do odpowiednich linii (następnej lub wcześniejszej) ALBO (jeśli brak miejsca) przenosi słowo poprzedzające zaimek do następnej linii, by zaimek nie występował samotnie.

tegraf - 11 Styczeń 2013, 16:14

W kwestii porządkowej: nie chodzi o przenoszenie do nowej czy też "cofanie" do poprzedniej poprzez wstawianie sztucznego podziału miękkim enterem - bo jak sam piszesz - przy zmianie szerokości akapitu wszystko pójdzie w diabły - tylko o wstawienie po wyrazie jednoznakowym (najczęściej spójniku), litery o kształcie jak spacja, ale zachowującej się jak każda inna litera, co powoduje, że spójnik i wyraz następny jest traktowany jak jeden wyraz.

Taki znak to tzw. spacja nierozdzielająca (Alt + na klawiaturze numerycznej 0160).

Wstawia się ja nie tylko po spójnikach, ale także w każdym innym przypadku który tego wymaga, na przykład po skrótach ("np.", "tzn.") które też lepiej wyglądają gdy są doklejone do wyrazu następnego. Są tacy, dla których wyrazy dwu i trzyznakowe na końcu wiersza to też błąd.

Shame - 12 Styczeń 2013, 16:16

tegraf, dzięki za info, bo tego nie wiedziałem. Rzecz ciekawa, ale jednak i tak nie rozwiązuje problemu, bo jest nie do zastosowania (tak jak miękki enter) przy dużej ilości tekstu. Wyobraź sobie 30 stron ciurkiem, w którym odstępy między zaimkami lub wyrazami dwu-, trzy- znakowymi wypełniasz ręcznie magiczną spacją. Ale dobrze, że mi przypomniałeś, bo oczywiście również chodziłoby mi o te dwu- lub trzy- znakowe wyrazy.

Bo jeśli dobrze kombinuję, to makro mogłoby właśnie przenosić do następnej linii krótkie wyrazy, które poprzedza kropka lub przecinek (wtedy przeniosłoby a, że, co, gdy, ale i inne tego typu) oraz przenosiłoby do linii wyżej te krótkie wyrazy, po których znajduje się kropka lub przecinek (za wyjątkiem np., tzw., m.in. - chyba nie ma ich tak dużo, żeby nie można było tego uwarunkować "na sztywno" w kodzie).

Sam nie jestem w stanie rozkminić wszelkich możliwości występowania wdów i sierot, ale powyższy algorytm chyba mógłby działać - przynajmniej w jakimś zakresie.

tegraf - 12 Styczeń 2013, 16:29

Shame napisał/a:
Wyobraź sobie 30 stron ciurkiem, w którym odstępy między zaimkami lub wyrazami dwu-, trzy- znakowymi wypełniasz ręcznie magiczną spacją.


Tak samo nie mogę sobie wyobrazić 30 stron ciurkiem, w których muszę ręcznie wciskać miękki enter. Tym bardziej, że jak mi przyjdzie zmienić rozmiar ramki na tych 30 stronach, to te "miękkie entery" będę musiał ręcznie usuwać.

Shame napisał/a:
Bo jeśli dobrze kombinuję, to makro mogłoby właśnie przenosić do następnej linii krótkie wyrazy, które poprzedza kropka lub przecinek (wtedy przeniosłoby a, że, co, gdy, ale i inne tego typu) oraz przenosiłoby do linii wyżej te krótkie wyrazy, po których znajduje się kropka lub przecinek (za wyjątkiem np., tzw., m.in. - chyba nie ma ich tak dużo, żeby nie można było tego uwarunkować "na sztywno" w kodzie).


Trochę mylisz pojęcia, Jedynym znakiem przenoszącym coś do nowego wiersza jest - w uproszczeniu - enter lub "miękki enter". Nie ma natomiast znaku przenoszącego coś do linii wyżej. To, czy wyraz + twarda spacja + spójnik znajdzie się wyżej, zależy od parametrów akapitu (wielu), tam po prostu musi być na to miejsce. Jeżeli nie będzie, nic nie zostanie przeniesione.

Shame - 12 Styczeń 2013, 18:40

Rozumiem brak znaku cofania do linii wyżej. Faktycznie raczej chodzi o przenoszenie wyrazu poprzedzającego zaimek do następnej linii wraz z zaimkiem. Teraz kiedy to przemyślałem, ten zabieg wystarczy.

Cytat:
Tak samo nie mogę sobie wyobrazić 30 stron ciurkiem, w których muszę ręcznie wciskać miękki enter. Tym bardziej, że jak mi przyjdzie zmienić rozmiar ramki na tych 30 stronach, to te "miękkie entery" będę musiał ręcznie usuwać.

Przecież napisałem wcześniej, że TAK JAK MIĘKKI ENTER, twarda spacja nie ma sensu przy dużej ilości tekstu. Z drugiej strony twarda spacja "spawa" wyraz i zaimek zawsze trzymając je razem, niezależnie od ułożenia w tekście, co nie byłoby złym pomysłem

Reasumując - makro musiałoby zamieniać zwykłe spacje, na twarde tam, gdzie występują zaimki oraz wyrazy dwu- lub trzy- literowe.

Teraz się zgadza?

tegraf - 12 Styczeń 2013, 18:56

Zgadza. Póki nikt go nie napisze, to powyższy efekt (tylko dla wyrazów jednoliterowych) można osiągnąć poprzez zwykłe "Zamień tekst":

wyszukaj: [spacja]a[spacja]
zamień na: [spacja]a[twarda spacja]

po czym jeszcze kilka razy, zamiast a podstawiając: i, o, u, w, z.

Shame - 12 Styczeń 2013, 19:18

A czy słyszałeś, żeby takie makro gdzieś było? Bo właściwie, to podejrzewam, że to dość powszechny problem. Pomijam przy tym fakt, że w dzisiejszych czasach 90% ludzi wyciera sobie d... ojczystym językiem i ma gdzieś zasady pisowni. Ja wiem, że układ wyrazów na stronie nie jest kluczowym elementem pisowni - bo ważniejsze, żeby nie było błędów, niż to, czy "się" zawisło samotnie w nowym wersie... Nie mniej jednak uważam, że właściwa pozycja słów w tekście jest równie istotne dla prawidłowego odbioru.

Tak z czystej ciekawości, to czy takie makro jest w stanie liczyć litery z słowie, czy trzeba by to całe makro oprzeć o wyjątki wpisane na sztywno?

tegraf - 12 Styczeń 2013, 19:37

Dla Corela nie znam. Dla InDesign są skrypy Henryka Jursza:
http://draftcloud.jursz.pl/narzedzia/

Wiszące Spójniki 1.1 i bardziej zaawansowany UseMyTypo. Z tego co wiem, wyszukują frazy do zamiany zdefiniowane w pliku, bez liczenia - ale to do sprawdzenia.


Powered by phpBB modified by Przemo © 2003 phpBB Group