Jak usunąć wiszące spójniki?
Są różne metody na szybkie i skuteczne usunięcie wiszących spójników w programie InDesign, a wszystkie opierają się na wykorzystaniu narzędzia GREP, które umożliwia wyszukiwanie wzorców pasujących do wyrażenia regularnego. Możemy wyszukiwać te elementy poprzez włączenie okna Znajdź/zamień (CTRL + F) i wybranie zakładki GREP lub włączenie zakładki Styl GREP w oknie stylu akapitowego (Okno → style → styl akapitowy → PPM na wybranym stylu, np. tekst zasadniczy → edytuj /nazwa stylu/ → zakładka: Styl GREP → Nowy styl GREP).
Różnica między Znajdź/zamień a Stylem GREP
W przypadku pierwszej opcji zmiana jest trwała i dotyczy całego tekstu, niezależnie od wybranego stylu akapitowego. Natomiast wykorzystując styl GREP, nie ingerujemy w cały składany tekst, a zmiany działają tylko na ten konkretny styl, który właśnie edytujemy. Ponadto zawsze możemy możemy usunąć styl GREP, a wtedy tekst wróci do stanu sprzed wprowadzenia zmiany. Obie te metody stanowią podstawowe narzędzie pracy każdego projektanta DTP oferującego profesjonalny skład publikacji i pozwalają uniknąć jednego z bardziej kłujących w oczy błędów składu, rażącego już nie tylko składaczy, ale wszystkich obcujących z tekstem.
Skoro znasz już podstawową różnicę między wykorzystaniem kodu GREP przy użyciu komendy Znajdź/zamień a pracą na stylu GREP, pora napisać swoje pierwsze wyrażenie GREP. Pamiętaj jednak, by zawsze testować nowe wyrażenia przed kliknięciem polecenia Zamień wszystkie.
Najczęściej popełniane błędy
- Kopiowanie wyrażeń GREP z Internetu, razem ze znakiem końca akapitu: \p, \n.
- Pozostawianie spacji w polu Znajdź/zamień. Jako że tradycyjnej spacji nie widać, dobrym nawykiem jest używanie kodu: x{20}.
- Nietestowanie wyrażeń na próbce tekstu, a zastosowanie ich od razu w całym tekście.
Sposób 1. Usuwanie wiszących spójników poprzez wstawienie twardej spacji
Zaczniemy od sposobu najbardziej ingerującego w strukturę książki. Przy okazji jest to mój ulubiony sposób usuwania sierot podczas pracy nad składem książki lub publikacji naukowej. Dzięki wstawieniu twardej spacji program nie musi analizować pojedynczych spójników, przez co zużywa mniej danych i praca w nim jest płynniejsza.
Żeby usunąć wiszące spójniki, uruchamiamy okno Znajdź/zamień (CTRL + F), następnie przechodzimy do zakładki GREP.
Wpisujemy nasze wyrażenie regularne na usunięcie spójników i innych sierot:
Znajdź:
(?i)\b([aiouwz])\x{20}
Zamień:
$1~S
Klikamy Gotowe i… w taki oto sposób pozbyliśmy się wiszących znaków w całym tekście. Z pomocą tej jednej prostej komendy właśnie ułatwiliśmy sobie projektowanie tekstu – koniec z ręcznym redukowaniem samotnych znaków. Zamiast tego automatycznie po każdym spójniku wstawiliśmy twardą spację, przez co są one teraz „przyklejone” do następnego znaku.
Jednak chciałbym również wytłumaczyć, w jaki sposób działa to wyszukiwanie – a więc co oznaczają wykorzystane w nim tzw. kwantyfikatory – żeby każdy mógł w przyszłości pisać własne wyrażenia GREP.
- (?i) – ignoruj wielkość liter – podczas korzystania z wyrażeń regularnych wielkość liter ma znaczenie, natomiast wstawienie tego modyfikatora na początku linii pozwala ingerować w wyrażenia zapisane zarówno małą, jak i dużą literą;
- \b – granica słowa – kwantyfikator ten informuje, że znaki, które będą stały za tym symbolem, muszą znajdować się na granicy słowa;
- ( ) – grupowanie elementów – umieszczenie poszczególnych elementów w nawiasie okrągłym pozwala grupować znaki wpisane w polu Zamień;
- [ ] – klasa znaków – znaki umieszczone w nawiasie kwadratowym stanowią zakres wyszukiwania. Przykładowo, zakres [ad] pozwala wyszukać i następnie zamienić znaki /a/ oraz /d/, z kolei zakres [a-d] wyszuka i następnie zamieni nam wszystkie znaki od /a/ do /d/. W przypadku tego wyrażenia GREP wskazany zakres wyszuka nam spójniki oraz inne wiszące znaki (np. przyimki), czyli a, i, o, u, w, z – a więc nasze sieroty;
- \x{20} – znak spacji – zapisany w Unicode; polecam korzystać z tego kwantyfikatora, ponieważ dzięki temu pozbywamy się niepotrzebnych tradycyjnych spacji, które mogłyby wpłynąć na wyrażenie GREP.
- $1 – grupa wyszukiwania 1 – kwantyfikator ten pozwala nam zamienić to, co w polu Znajdź znalazło się w naszym drugim nawiasie okrągłym. Każdy kolejny nawias stanowiłby kolejne odwołanie do wyszukiwania, jeśli zaś do wyszukiwania nie mamy żadnej grupy znaków ( ), wtedy nasz kwantyfikator w polu Zamień na to $0;
- ~S – twarda spacja – czyli spacja, której Adobe InDesign nie rozdzieli. To dzięki niej nasz tekst będzie wolny od wiszących spójników i innych pojedynczych znaków.
Sposób 2: Dodanie atrybutu no break do stylu akapitowego
Kolejną metodą jest zagnieżdżenie wyrażenia regularnego w stylu akapitowym. Ta metoda działa w tle, więc bardziej obciąża program, jednak zdecydowanie lepiej sprawdza się podczas składania czasopism, magazynów lub katalogów i przy innych projektach, w których często zmieniamy tekst i gdzie wprowadzanie twardej spacji za każdym razem może być niewygodne.
Warto przy tym pamiętać, że tak wprowadzony GREP działa tylko na danym stylu akapitowym, w którym został on zastosowany, jeśli więc nie tworzyliśmy stylów akapitowych na podstawie któregoś z naszych stylów, wyrażenie GREP będzie trzeba zastosować osobno do wszystkich interesujących nas stylów.
- Klikamy prawym przyciskiem myszy na nasz styl akapitowy i wybieramy: Edytuj /nazwa stylu/;
- Wybieramy zakładkę Styl GREP i klikamy Nowy styl GREP.
W nowym oknie pojawiły nam się dwa elementy: Zastosuj styl oraz Do tekstu. Zastosuj styl to pole, gdzie wybieramy, który styl znakowy ma zostać zastosowany dla znalezionego elementu. Z kolei Do tekstu to pole, gdzie wpisujemy nasze wyrażenie na wiszące spójniki oraz inne pojedyncze znaki.
Zastosuj styl:
NB (jest to styl znakowy z nadanym atrybutem /bez dzielenia/, ang. no break)
Do tekstu:
(?i)(?<=\b[aiouwz])\x{20}
Możesz wprawdzie użyć poprzedniego wyrażenia, jednak poza spacją również sierota będzie miała nadany styl znakowy, dlatego też nieznacznie zmieniłem składnię poprzez dodanie jednego elementu:
- (?<=) – dodatnie wybieganie wstecz – kwantyfikator ten w procesie wyszukiwania ma zastosowanie tylko w przypadku, gdy następuje po nim konkretne dopasowanie wzorca. Czyli tutaj: znajdź spację, przed którą znajdują się znaki /aiouwz/, będące jednocześnie początkiem słowa.
I… w sumie to tyle. Właśnie w taki sposób do wszystkich sierot w tekście został dodany styl znakowy NB z atrybutem Bez dzielenia, dzięki czemu tekst jest wolny od wiszących spójników i przysłówków.
Podsumowanie
Oba sposoby działają bardzo dobrze, warto jednak samodzielnie się przekonać, który z nich lepiej sprawdzi się w danej sytuacji. Pamiętaj, że – niezależnie od tego, czy w grę wchodzi skład książki do druku, e-booka; skład powieści czy czasopisma – redukcja wiszących znaków to kluczowy etap projektowania. Wybierz odpowiednią dla swoich potrzeb metodę i ciesz się projektem wolnym od tego subtelnie irytującego błędu. Korektorzy poskładowi, autorzy i czytelnicy na pewno będą za to wdzięczni. Mam nadzieję, że dziś pomogłem Ci zrozumieć sposób, w jaki możesz pisać GREPy, a w opracowywanym przez Ciebie tekście sierotki już więcej się nie pojawią.
Oczywiście należy wziąć pod uwagę, że usuwanie wiszących znaków to jedynie wierzchołek góry lodowej w świecie projektowania w InDesignie. Zachęcam Cię więc do zgłębiania innych artykułów na ten temat, aby poszerzyć swoją wiedzę. Śledź moje konto na Instagramie oraz blog, by odkrywać kolejne wskazówki i triki dotyczące InDesigna.
Świetnie opracowany materiał! Myślę, że nawet jeśli ktoś nie rozumiał składni GREP to tutaj ma wszystko dokładnie wytłumaczone.
Pouczająca lektura! Doceniam szczegółowość i dokładność. Szkoda tylko, że niektóre fragmenty są zbyt techniczne dla laików. Mimo to, świetne źródło wiedzy!
Cieszę sięże mogłem pomóc, starałem się tłuamaczyć wszystko w bardzo zrozumiały sposób. Daj znać co było zbyt techniczne ponieważ aktualnie jestem w trakcie pisania kursu o GREP do indesign, więc takie rady pomogą wytłumaczyć lepiej całe zagadnienie. 🙂
Cześć,
Może z innej beczki – ale dlaczego po wejściu na stronę z użyciem Edge czy Chrome automatycznie wyświetla mi się tekst po angielsku? :-O
W sumie to nie mam pojęcia, patrzyłem na różnuych urządzeniach bez cache, w trybie prywatnym i u mnie ciągle jest po polsku. Chyba że masz język angielski jako systemowy i wtyczka automatycznie wykrywa jezyk wyświeltania.