01 березня 2023

Перетворюємо списки на діалоги

Маю подарунок для редакторів.

Кажуть, що деякі автори часто присилають текст, де діалог зроблено маркованим списком. Перетворити такий список у нормальний текст і розставити тире — та ще морока. Але я маю рішення — макрос для візуал бейсіка у ворді. Ну, і заразом чистимо пробіли та наводимо лад із рисками та тире.

Оновлено 08/10/206:

  • Нормальне форматування для негативних діапазонів дат
    (-100 - -90 → −100 — −90)
  • Деякі виправлення та покращення
  1. Відкрийте документ з маркованими списками з діалогами у Microsoft Word.
  2. Відкрийте Visual Basic Editor. «Alt» + «F11» або так:
  3. У Visual Basic Editor виберіть Normal у списку проектів (Project) в лівій частині екрана.
  4. Вставте код у вікно коду макросу:
    Option Explicit
    Sub ConvertDialogListsToText(dashesArray As Variant)
        Dim para As Paragraph
        Dim i As Long
    
        ' Loop through each paragraph in reverse order
        For i = ActiveDocument.Paragraphs.Count To 1 Step -1
            Set para = ActiveDocument.Paragraphs(i)
    
            ' Check if the paragraph is a bullet or outline list item
            ' and if its list marker is one of the supported dash characters
            If (para.Range.ListFormat.ListType = wdListBullet Or _
                para.Range.ListFormat.ListType = wdListOutlineNumbering) _
                And (InStr(1, Join(dashesArray, ""), _
                para.Range.ListFormat.ListString) > 0) Then
    
                ' Remove the list formatting
                para.Range.ListFormat.RemoveNumbers
    
                ' Insert an em dash followed by a regular space
                para.Range.Text = ChrW(8212) & " " & para.Range.Text
            End If
        Next i
    End Sub
    
    Sub MergeSpaces()
        Application.ScreenUpdating = False
        With ActiveDocument.Range
            With .Find
                .ClearFormatting
                .Replacement.ClearFormatting
    
                ' Replace multiple regular spaces with a single space
                .Text = "([^s ])@[^s ]"
                .Replacement.Text = " "
                .Forward = True
                .Format = False
                .Wrap = wdFindContinue
                .MatchWildcards = True
                .Execute Replace:=wdReplaceAll
            End With
        End With
        Application.ScreenUpdating = True
    End Sub
    
    Sub NormalizeNumericMinusSigns(dashesArray As Variant)
        Dim dash As Variant
        Dim rng As Range
        Dim prevChar As String
        Dim nextChar As String
    
        ' Convert dash-like characters used as numeric minus signs
        ' to the mathematical minus sign U+2212.
        ' Examples:
        '   -100       -> −100
        '   (-25)      -> (−25)
        '   -100 - -90 -> −100 - −90
        ' A dash is treated as a minus sign only when:
        '   1. It is immediately followed by a digit.
        '   2. It is at the beginning of the document or is not
        '      immediately preceded by a letter or digit.
        ' This prevents values such as 2026-10-08 or A-10
        ' from being interpreted as negative numbers.
    
        For Each dash In dashesArray
    
            ' Skip the mathematical minus itself
            If CStr(dash) <> ChrW(8722) Then
                Set rng = ActiveDocument.Content
                With rng.Find
                    .ClearFormatting
                    .Replacement.ClearFormatting
                    .Text = CStr(dash)
                    .Forward = True
                    .Wrap = wdFindStop
                    .Format = False
                    .MatchCase = False
                    .MatchWholeWord = False
                    .MatchWildcards = False
                End With
                Do While rng.Find.Execute
                    prevChar = ""
                    nextChar = ""
    
                    ' Get the character before the dash
                    If rng.Start > 0 Then
                        prevChar = ActiveDocument.Range( _
                            rng.Start - 1, rng.Start).Text
                    End If
    
                    ' Get the character after the dash
                    If rng.End < ActiveDocument.Content.End Then
                        nextChar = ActiveDocument.Range( _
                            rng.End, rng.End + 1).Text
                    End If
    
                    ' Convert to a mathematical minus when the dash
                    ' is followed by a digit and appears in unary context
                    If IsDigit(nextChar) And _
                       IsUnaryMinusContext(prevChar) Then
                        rng.Text = ChrW(8722)
                    End If
                    rng.Collapse wdCollapseEnd
                Loop
            End If
        Next dash
    End Sub
    
    Sub ReplaceDashes(dashesArray As Variant)
        Dim dash As Variant
        Dim rng As Range
        Dim nextChar As String
    
        For Each dash In dashesArray
    
            ' Do not process the mathematical minus sign as a dash
            If CStr(dash) <> ChrW(8722) Then
    
                ' -----------------------------------------------------
                ' Replace "space + dash" with
                ' "non-breaking space + em dash".
                ' Example:
                '   100 - 200
                ' becomes:
                '   100 — 200
                ' The space before the em dash is U+00A0.
                ' -----------------------------------------------------
    
                Set rng = ActiveDocument.Content
    
                With rng.Find
                    .ClearFormatting
                    .Replacement.ClearFormatting
                    .Text = " " & CStr(dash)
                    .Forward = True
                    .Wrap = wdFindStop
                    .Format = False
                    .MatchCase = False
                    .MatchWholeWord = False
                    .MatchWildcards = False
                End With
    
                Do While rng.Find.Execute
                    nextChar = ""
                    If rng.End < ActiveDocument.Content.End Then
                        nextChar = ActiveDocument.Range( _
                            rng.End, rng.End + 1).Text
                    End If
    
                    ' A dash directly followed by a digit may still be
                    ' a numeric minus sign, so leave it untouched here.
                    If Not IsDigit(nextChar) Then
                        rng.Text = ChrW(160) & ChrW(8212)
                    End If
    
                    rng.Collapse wdCollapseEnd
    
                Loop
    
                ' -----------------------------------------------------
                ' Replace "dash + space" with "em dash + space".
                ' The space after the em dash remains a regular space.
                ' -----------------------------------------------------
    
                Set rng = ActiveDocument.Content
    
                With rng.Find
                    .ClearFormatting
                    .Replacement.ClearFormatting
                    .Text = CStr(dash) & " "
                    .Replacement.Text = ChrW(8212) & " "
                    .Forward = True
                    .Wrap = wdFindStop
                    .Format = False
                    .MatchCase = False
                    .MatchWholeWord = False
                    .MatchWildcards = False
                    .Execute Replace:=wdReplaceAll
                End With
            End If
        Next dash
    End Sub
    
    Private Function IsDigit(ByVal value As String) As Boolean
    
        ' Return True if the supplied character is a decimal digit
        If Len(value) = 1 Then
            IsDigit = (value >= "0" And value <= "9")
        Else
            IsDigit = False
        End If
    End Function
    
    Private Function IsUnaryMinusContext(ByVal value As String) As Boolean
    
        ' The beginning of the document is a valid unary minus context
        If Len(value) = 0 Then
            IsUnaryMinusContext = True
            Exit Function
        End If
    
        ' A minus sign following a letter or digit is normally part
        ' of another construction, such as 2026-10 or A-10
        If IsLetterOrDigit(value) Then
            IsUnaryMinusContext = False
        Else
            IsUnaryMinusContext = True
        End If
    End Function
    
    Private Function IsLetterOrDigit(ByVal value As String) As Boolean
        Dim code As Long
    
        If Len(value) <> 1 Then
            IsLetterOrDigit = False
            Exit Function
        End If
    
        code = AscW(value)
    
        ' Digits 0-9
        If code >= 48 And code <= 57 Then
            IsLetterOrDigit = True
            Exit Function
        End If
    
        ' Latin uppercase letters
        If code >= 65 And code <= 90 Then
            IsLetterOrDigit = True
            Exit Function
        End If
    
        ' Latin lowercase letters
        If code >= 97 And code <= 122 Then
            IsLetterOrDigit = True
            Exit Function
        End If
    
        ' Basic Cyrillic uppercase and lowercase letters
        If code >= &H410 And code <= &H44F Then
            IsLetterOrDigit = True
            Exit Function
        End If
    
        ' Ukrainian Cyrillic letters:
        ' І, і, Ї, ї, Є, є, Ґ, ґ
        Select Case code
            Case &H406, &H456, _
                 &H407, &H457, _
                 &H404, &H454, _
                 &H490, &H491
    
                IsLetterOrDigit = True
                Exit Function
        End Select
    
        IsLetterOrDigit = False
    End Function
    
    Sub RightTrim()
        With ActiveDocument.Content.Find
            .ClearFormatting
            .Replacement.ClearFormatting
    
            ' Remove regular spaces immediately before paragraph marks
            .Text = " ^p"
            .Replacement.Text = "^p"
            .Forward = True
            .Wrap = wdFindStop
            .Format = False
            .MatchCase = False
            .MatchWholeWord = False
            .MatchWildcards = False
            .MatchSoundsLike = False
            .MatchAllWordForms = False
            .Execute Replace:=wdReplaceAll
        End With
    End Sub
    
    Sub LeftTrim()
        With ActiveDocument.Content.Find
            .ClearFormatting
            .Replacement.ClearFormatting
    
            ' Remove regular spaces immediately after paragraph marks
            .Text = "^p "
            .Replacement.Text = "^p"
            .Forward = True
            .Wrap = wdFindStop
            .Format = False
            .MatchCase = False
            .MatchWholeWord = False
            .MatchWildcards = False
            .MatchSoundsLike = False
            .MatchAllWordForms = False
            .Execute Replace:=wdReplaceAll
        End With
    End Sub
    
    Sub RemoveFirstSpace()
        Dim firstChar As Range
    
        Set firstChar = ActiveDocument.Range.Characters(1)
    
        ' Remove a leading regular space at the beginning of the document
        If firstChar.Text = " " Then
            firstChar.Delete
        End If
    End Sub
    
    Sub ClearDoc()
        Dim dashesArray As Variant
    
        ' Supported dash, hyphen and minus-like characters:
        ' 45   = Hyphen-minus
        ' 8212 = Em dash
        ' 8211 = En dash
        ' 8209 = Non-breaking hyphen
        ' 8722 = Mathematical minus sign
        ' 8210 = Figure dash
        ' 8259 = Hyphen bullet
        dashesArray = Array( _
            ChrW(45), _
            ChrW(8212), _
            ChrW(8211), _
            ChrW(8209), _
            ChrW(8722), _
            ChrW(8210), _
            ChrW(8259) _
        )
    
        Call ConvertDialogListsToText(dashesArray)
        Call MergeSpaces
        Call RightTrim
        Call LeftTrim
    
        ' Convert numeric minus signs before processing punctuation dashes
        Call NormalizeNumericMinusSigns(dashesArray)
    
        ' Normalize punctuation dashes
        Call ReplaceDashes(dashesArray)
        Call RemoveFirstSpace
    End Sub
  5. Збережіть макрос.
  6. Відкрийте «Макроси» (Macros). «Alt» + «F8» або так:
  7. Виберіть новий макрос ClearDoc і натисніть Run щоб запустити його.
  8. Перевірте документ і закиньте донат на ЗСУ.
Користуюючись нагодою, хочу звернути увагу на розкладку з тире, наголосом і ла́пками: розкладка

Мітки:

28 жовтня 2021

Антиваксери COVID-19 використовують ті самі аргументи, що й 135 років тому

Гравюра 1801 року, на якій чепурний лікар підносить ланцет до «діндонади» (слово, що означає як «індичка», так і «обман»). У ньому висміюється вакцина проти віспи, яка забирає тваринну рідину у птаха для введення людині.

1885 — рік епідемії віспи. Як ми зараз знаємо, саме вакцинація допомогла людству повністю викорінити цю хворобу. Але й тоді суспільство багато в чому поводилося так само, як ми бачимо і сьогодні — спростування, маніпуляції, фейки, суперечки.

У той рік, провідний борець із вакцинацією доктор Александр М. Росс опублікував свою брошуру, в якій використав майже ті самі прийоми, що бачимо зараз в риториці ковідних антиваксерів, тільки стосовно вакцини проти віспи. До речі, як пізніше виявилося, сам він був щеплений.

У міру посилення обмежень, Росс оголосив себе єдиним лікарем, який наважився кинути виклик системі, і опублікував цю брошуру, в якій закликав усіх перестати довіряти вакцинам.

Власне, на прикладі цієї брошури можна розібрати використані прийоми маніпуляції з даними та фактами.

Маніпуляції за пунктами

1: Применшувати загрозу захворювання

Незважаючи на 30-40% летальність від віспи Росс писав: не варто хвилюватися та боятися віспи — вона небезпечна лише для незначної частини населення.

Що ми бачимо зараз у риториці сучасних антиваксерів: навіщо потрібна вакцинація молодим; людям без патологій; тим, що перехворіли; а якщо у когось алергія?; і взагалі, давайте вакцинувати тільки тих для кого ковід справді небезпечний: лише літніх людей з імуносупресією.

2. Стверджувати що вакцина не захищає від захворювання

Пункт 2 у методиці Росса – вакцина не захищає вас від хвороби.

Що ж ми бачимо сьогодні: вакцина не захищає вас від інфекції, максимум зробить перебіг вашої хвороби легшим, бла-бла-бла.

3. Наголошувати на відстку захворілих вакцинованих

Росс пише, що в Лондоні під час останнього спалаху 92% хворих були вакцинованими.

Щодня ми чуємо ці вигуки серед антиваксерів: серед госпіталізованих в Ізраїлі 30–40–50% було вакциновано. Але ж при цьому антиваксерам начхати на ту ймовірність скільки госпіталізованих людей було б без вакцинації. Начхати що вакцинованих в 10-15 разів більше, ніж гопісталізованих. Адже 30 % пацієнтів у лікарнях вакциновані, кожен третій же!!!

Це чистої води маніпуляція, коли 100% літніх людей буде вакциновано, як скажімо в Португалії чи Ірландії — то невакцинованих просто не буде. 100% госпіталізованих буде вакциновано. У вас може бути 1 госпіталізований, але антиваксер гордо заявить: адже 100 відсотків вакциновані, але є госпіталізований, отже, вакцина не працює!

4. Применшувати вплив вакцини на тяжкість захворювання

Росс у пункті 4 пише про те, що вакцина не зменшує тяжкість або летальність.

5. Стверджувати, що саме вакцина викликає захворювання

У пункті 5 Росс пише, що вакцина сама по собі може стати причиною якогось захворювання і часто смертельного.

Зараз основні тези антиваксерів — це вакцина викликає тромбоз, міокардит і сам ковід.

Ризики не порівнювались тоді, ніхто з антиваксерів не порівнює їх і зараз. Наприклад ризик поствакцинального міокардиту у людей старших за 40 років становить 2 на 100 тисяч вакцинованих. Тоді як ризик міокардиту після ковіду вищий у шість разів — 12 на 100 тисяч. Або ризик автоімунної тромбоцитопенії, який дорівнює 1 на 300 000 доз і більше. Теза про те, що вакцина викликає ковід — це дурість на рівні класів школи, де тільки починають вивчати біологію.

Всі ми знаємо як антиваксери кричать, що вакцина КПК (кір/краснуха, паротит) викликає аутизм, і все це засноване на одному, лише на одному фейковому дослідженні. Ось твіттер-тред, де цей фейк докладно розібраний та спростований.

Так, звичайно, були випадки захворювань або ускладнень після вакцинації: наприклад, після застосування живої вакцини проти поліомієліту були спалахи, або після застосування Pandemrix — вакцини проти H1N1 з'явилася більше випадків нарколепсії.

Все дуже залежить від конкретної вакцини — ті вакцини, які використовуються зараз більш ніж безпечні, 3,5 млрд людей вакциновано і якби щось було, то вже давним давно це вже спливло б у багатьох інформаційних та новинних агентствах, наукових публікаціях. Причому в таких масштабах навіть складно уявити.

6. Оголосити вакцинацію частиною глобальної змови та обмеження свобод

На картинці видно, як людину пов'язали, обмежили її свободу як мінімум на добровільну вакцинацію та насильно вакцинують.

Що бачимо зараз?

Обмеження — незаконні для невакцинованих. Це наше право на добровільну вакцинацію. Примусова вакцинація — це порушення наших конституційних прав, бла-бла-бла.

7. Посилатися на фейкових авторитетів

Росс посилається на різних лікарів, з регаліями, і вказує, що всі вони також проти вакцинації, і тим самим вводячи людей в оману. Наприклад: «J.EPPS — 25 років досвіду, директор інституту, і після 120 000 вакцинацій заявив що вакцина це отрута».

Що ми бачимо в основі багатьох риторичних прийомів антиваксерів зараз? Відсилання на якихось Чучалиних, Зеленько, якісь секти. Одним словом, головне посилатися на якусь людину з регаліями, тим самим підкріплювати свою антиваксерську позицію, мовляв, хто ти, і подивися хто він, він же АКАДЕМІК!!!

8. І останнє: повісити ярлики на лікарів, які пропагують вакцинацію

Росс підкреслює що настав час припинити тиранію лікарів.

Ким тільки не були названі лікарі та вчені, які пропагують вакціонацію: нацистами, садистами, фашистами, сатаністами, комуняками, вбивцями тощо.

135 років минуло з тих часів, вакцини змінюються – то проти віспи, то проти кору, то проти ковіда – а набір маніпулятивних технік антиваксерів залишається незмінним.

Це не вичерпний перелік антивакцинальних стратегій — історичних чи сучасних. Завжди були люди, які наживалися на медичних кризах, щоби просувати свій власні інтереси, а в сучасну епоху цифрових медіа стратегії дезінформації ще більше розвинулися. Так само, як і Росс, лідери цих рухів здобувають соціальну владу, зображуючи себе самотніми хрестоносцями.

Вірте в науку, в доказову медицину. Вакцинуйтесь!

Мітки:

30 червня 2021

Українська покращена розкладка

Зробив нормальну розкладку, бо всі інше — «не те».
Робив заради довгого тире та «ялинок», але захопився.
Про сім видів рисочок, здається, вже всі знають.

- дефісомінус.

— довге тире.

– середнє тире.

‑ дефіс.

‑ нерозривний дефіс (текстові редактори не будуть розривати таке слово).

− мінус.

‒ цифрова рисочка (та, що в номерах телефонів).

З лапками та апострофами все теж непросто.

Ви знали, що одинарна лапка ( ’ ) це не те саме, що апострофи ( ' , ʼ ) і, тим більше, не те, що прайм ( ′ )? Тепер знаєте.
« » " ' ‘ ’ „ “ ” ‹ › — це все лапки зі своїми правилами вживання.

А як поставити на́голос знали? Із моєю розкладкою — alt + 7.
Довгий пробіл (не уявляю навіщо :) )? — shift + пробіл.
І ще купа корисного.

Скачати для Windows
Скачати для Mac (без dead keys)

Якщо не можете встановити розкладку через адмінські обмеження — використовуйте AutoHotKeys. Це можна зробити без адмінських прав.
AutoHotKeys скрипт для Windows

Мітки:

17 травня 2021

Чак Поланік — Ази: «Мисленнєві» дієслова

За шість секунд ви мене зненавидите.

Але за шість місяців ви станете писати краще.

Від цього моменту — принаймні, протягом наступної половини року — ви не можете використовувати «мисленнєві» дієслова. Це: думає, знає, розуміє, усвідомлює, вірить, хоче, пам'ятає, уявляє, бажає та ще сотня інших, якими ви любите користуватися.

Список також має включати: «любить» і «ненавидить». А ще: «бути» та «мати», але до них ми дійдемо пізніше.

Приблизно до Різдва ви не можете писати таке: «Кенні думав, чи не злиться Моніка на те, що він пізно прийшов додому…»

Натомість вам доведеться розпакувати це в щось на кшталт: «Уранці після нічних загулів, коли Кенні спізнювався на останній автобус, і мав ловити попутку чи платити за таксі аби повернутися додому, де знаходив Моніку, що вдавала сон — вдавала, бо ніколи не спала так тихо — уранці після такого, вона ставила в мікрохвильовку лише свою чашку кави. Ніколи його».

Замість того, щоби персонажі знали щось, тепер ви мусите показати деталі, які дадуть читачеві змогу це взнати. Замість того, щоби персонаж чогось хотів, тепер ви мусите описати річ так, щоби читач її захотів.

Не пишіть: «Адам знав, що він подобається Гвен».

Натомість вам доведеться написати: «Між уроками Гвен завжди спиралася на шафку Адама, коли він підходив відчинити її. Вона закочувала очі та відштовхнулася однією ногою, залишаючи на пофарбованому металі чорну мітку від підбору, але також залишила запах своїх парфумів. Кодовий замок усе ще був теплим від її заду. І наступної перерви, Гвен знову була там».

Словом, більше жодних скорочень. Тільки конкретна чуттєва деталь: дія, запах, смак, звук і відчуття.

Як правило, письменники використовують ці «мисленнєві» дієслова на початку абзацу (в цій формі ви можете назвати їх «тезовими висловлюваннями»). Певним чином, вони заявляють про намір абзацу. Кілька прикладів:

«Бренда знала, що вона точно не встигне. Корок тягнувся від самого мосту повз перші вісім чи дев'ять виїздів. Батарея її мобільного розрядилася. А вдома чекали собаки, яких треба було вигуляти, бо вони влаштують справжній гармидер. Крім того, вона пообіцяла сусіду поливати його рослини...»

Ви бачите, як вступне «тезове висловлювання» перетягує на себе красу того, що йде далі? Не робіть цього. Або хоча б виріжте вступне речення та поставте його після решти. А ще краще, змініть його на «Бренда точно не встигне».

Думки абстрактні. Знання та віра нематеріальні. Ваша історія буде сильнішою, якщо ви просто продемонструєте конкретні дії та певні риси своїх героїв і дозволите своєму читачеві подумати та пізнати. Полюбити та зненавидіти.

Не кажіть своєму читачеві: «Ліза ненавиділа Тома».

Натомість робіть свою справу, як адвокат у суді, деталь до деталі. Представте кожен доказ: «Під час переклички, за подих після того, як учитель назвав ім'я Тома, перш ніж той устиг відповісти, Ліза голосно прошепотіла: “Засранець”, і Том сказав: “Тут”».

Однією з найпоширеніших помилок, якої припускаються письменники-початківці, є залишення своїх героїв у спокої. Письменник може бути на самоті. Читач може бути на самоті. Але вашому персонажу слід проводити дуже й дуже мало часу наодинці із собою. Тому що самотній персонаж починає думати, переживати чи дивуватися: «Очікуючи автобус, Марк почав переживати, скільки часу триватиме подорож».

Краще буде: «За розкладом автобус мав приїхати опівдні, та годинник Марка показував, що вже 11:57. Дорога проглядалася аж до торгового центру й автобуса на ній не було. Безперечно, водій припаркувався біля повороту, на іншому кінці лінії та задрімав. Водій дає хропака, а Марк запізнюється. Або ще гірше, водій пив, і тепер приїде п'яний, а Марк заплатить йому сімдесят п'ять центів щоби загинути у вогні дорожньо-транспортної пригоди...»

Самотній персонаж повинен почати фантазувати чи пригадувати щось, але навіть тоді ви не можете використовувати «мисленнєві» дієслова чи будь-якого з їхніх абстрактних родичів.

О, і ви можете забути про вживання дієслів «забути» та «пам'ятати».

Більше жодних пасажів на кшталт: «Ванда пам'ятає, як Нельсон розчісував їй волосся».

Натомість: «Ще на другому курсі Нельсон розчісував її волосся довгими плавними рухами».

Знову розпакуйте. Не скорочуйте.

А ще краще — швидко зіштовхніть свого персонажа з іншим. Нехай вони зустрінуться та розпочнеться дія. Нехай їхні вчинки та слова показують їхні думки. А ви — тримайся поза їхніми головами.

І поки ви уникаєте «мисленнєвих» дієслів, будьте дуже обережні, використовуючи прісні дієслова «бути» та «мати».

Наприклад, замість «Очі Енн були блакитні» чи «Енн мала блакитні очі» напишіть: «Енн закашлялася й замахала рукою перед обличчям, розганяючи сигаретний дим від своїх блакитних очей, потім усміхнулася…»

Замість недолугих «бути» й «мати», спробуйте розкрити те, яким може бути ваш персонаж та що він може мати в його діях або жестах. Тоді ви покажете свою історію, а не розкажете її.

І після того, як ви навчитеся розпаковувати своїх героїв, ви будете ненавидіти ледачих письменників, що пишуть: «Джим сидів біля телефону, дивуючись, чому Аманда не подзвонила».

Чудово. Тепер можете ненавидіти мене, але не використовуйте «мисленнєві» дієслова. Після Різдва можете знову користуватися ними, та я закладуся, що не станете.

Для домашнього завдання цього місяця:

Перегляньте своє письмо та обведіть кожне «мисленнєве» дієслово. Потім знайдіть спосіб позбутися його. Вбийте його, розпакувавши.

Потім перегляньте опубліковану художню літературу та зробіть те саме. Будьте нещадними.

«Марті уявив собі рибу, яка стрибає в місячному світлі...»
«Ненсі згадала, як смакувало вино...»
«Ларрі знав, що він мертвий...»

Знайдіть їх. А після цього знайдіть спосіб переписати їх. Зробіть їх сильнішими.

© Чак Поланік
Nuts and Bolts: "Thought" Verbs

Чак Поланік

Мітки:

01 квітня 2020

Eclipse: Second Dawn for the Galaxy українською

Переклав правила Eclipse: Second Dawn for the Galaxy українською.

Мітки: ,

28 березня 2020

Пригоди Above and Below українською

Переклав Книгу Пригод Above and Below українською.
Above and Below Cover

Мітки: ,

29 червня 2018

Scythe. The Rise of Fenris українською.

Переклав історію Scythe. The Rise of Fenris українською.

Мітки: ,

24 квітня 2018

This war of mine українською

Переклав журнал This war of mine українською.


Саму This war of mine купити можна за 2478 грн. якщо зареєструватися ;)

Мітки: ,

14 квітня 2018

Nemesis українською

Переклав правила Nemesis українською.


Все почалася так само як і безліч разів перед тим — пробудження в холодному тумані Гібернаторія, в самому центрі корабля. Як завжди, ми страждали від тимчасової амнезії через подорож крізь гіперпростір та гібернацію. Ми знали свої імена та мали деякі основні спогади, але ми не пам'ятали чітко, де були або що нам слід робити. Корабель здавався незнайомим.

Ми знали, що десь на кормі були три двигуни, а десь у носовій частині був місток. Ми були також знали, що на кораблі є дві рятувальні капсули, на випадок якщо щось піде ДУЖЕ погано. Решта спогадів лишалася розмитою. Та цього разу амнезія була не єдиною нашою проблемою — один із наших товаришів лежав у своїй камері гібернації із зяючою в грудях дірою. Мерехтіло аварійне світло.

Як капітан, я знав, що ми маємо уникати паніки та слідувати процедурам. Тож потрібно було оглянути корабель і перевірити, чи працюють двигуни, тому що нам треба було принаймні 2 з них щоби продовжити політ. Ми також повинні були перевірити координати, щоби переконатися, що корабель усе ще прямує до Землі.

Ми всі дивилися досить фільмів жахів щоби розуміти, потребуємо якоїсь зброї. На щастя, наші шафки були тут, із деяким обладнанням і предметами, необхідними для виконання наших функцій (хоча й не все було в робочому стані). Між моїм 6-тизарядником й іншими особистими речами я також знайшов щось іще — лист від мого роботодавця, що містив спеціальні накази.

Якийсь час тому, механік нашого корабля розкопав щось про корпорацію і заявив, що буде свідчити в суді, щойно він повернеться на Землю. Компанія дала зрозуміти, що вони не хочуть, щоби він повернувся. За жодних обставин.

Я знав, що багато членів мого екіпажу мали свої власні секретні плани та власні корпоративні цілі. Я не міг їм довіряти. Ми розділилися на дві групи — пілот і я мали перевірити місток, а механік і вчений пішли на корму, де було машинне відділення.

Я обережно просувався вперед коридором. Коли увійшов до сусідньої кімнати, то почув дуже дивний шум, що лунав з носа корабля. Потім двері зачинилися прямо за мною. Несправність системи! Стільки зусиль для того, щоби лишатися разом і все на смарку...

Я озирнувся — я опинився в секції з каютами екіпажу. Вирішив пошукати тут щось корисне. Знайшовши вогнегасник і аптечку відразу відчув себе трохи безпечніше. Тут більше нічого не було, тому я вирішив рухатися вперед. Саме тоді справи з поганих стали жахливими. Спершу, я вступив у якийсь зелений слиз, який покрив мої ноги й не стирався. А потім, я знову почув цей шум.

Раптом, жахлива личинка вискочила прямо на мене з темряви. Побачивши її кігті та щелепи, я був абсолютно впевнений, що ця штука зробить зі мною щось жахливе, якщо не буду діяти швидко. Отже, я розстріляв у неї майже всі свої набої — стріляв, доки вона не припинила ворушитися.

Тоді я зрозумів, що відбувається щось божевільне. Мені довелося вирішувати, чи хочу виконати завдання, яке дала мені компанія, чи буду дотримуватися своєї особистої цілі. Я подумав, що це не найкращий момент для того, щоби втрачати члена екіпажу — майбутнє людства може бути на кону! Замість того, щоб убити механіка, я вирішив, що маю надіслати сигнал, використавши нашу радіорубку, щоби попередити Землю про ситуацію. Потім я спробую дослідити одну з цих почвар у лабораторії, щоби отримати якомога більше інформації, перш ніж покинути цей приречений корабель.

Я саме вирішив трохи перепочити, щоби заспокоїти нерви, коли знову пролунав цей страшний шум. Цього разу на мене нічого не вискочило. Я увійшов до сусідньої кімнати. Це була генераторна. Тут ми з пілотом знову возз'єдналися. Це було єдине місце, де ми могли активувати послідовність самознищення корабля. З огляду на те, що я щойно бачив, це не виглядало як погана ідея... На жаль, кімната була пошкоджена, і нам треба було спочатку її відремонтувати. Ми вирішили, що механік найкраще підходить для цього завдання.

Я поговорив із пілотом, яка підтвердила те, чого я весь час боявся — почвар було більше, ніж єдина личинка. Дорогою сюди вона натрапила на дорослу почвару, котра встигла вдарити її. На щастя, це була лише легка рана, та я боявся, що вона може бути інфікована. І, оскільки ця почвара тепер ховалася десь там за нами, ми не могли повернутися до гібернаторія.

Ми витратили наступні кілька хвилин рухаючись обережно з однієї кімнати до іншої, намагаючись врятувати те, що ми могли — я зумів виготовити імпровізований вогнемет, використавши деякі хімікати та інструменти. На кожному кроці ми чули все більше шумів, що лунали все ближче.

Деякі з кімнат, які ми перевірили, були пошкоджені, а одна з них була охоплена пожежею. Наші справи виглядали недобре. Я знав, що корабель може витримати певну частину проблем перш ніж вибухне. Ми витратили якийсь час на ремонт системи керування люками щоби розблокувати наші дві рятувальні капсули — ми стали на один крок ближче до втечі із цієї смертельної пастки.

Тут ми розділилися. Пілот пішла до рубки, і я пішов надсилати свій сигнал. Я саме увів свій логін у консоль комунікатора та почав передачу, коли вибух кинув мене на протилежну стіну. Навіть приголомшений вибухом, я зрозумів, що хтось просто намагався вбити мене. Мені не довелося довго чекати на винуватця — за кілька секунд механік увірвався в кімнату, в його масній руці був ще один палаючий коктейль Молотова.

Він не міг застрелити мене або безпосередньо завдати мені шкоди — завдяки імплантам, що їх усі космічні бригади мали в головах. Ті подавляли пряму агресію, щоби запобігти насильству чи заколоту. Проте непрямий напад був одним зі способів обдурити імплант. Та механік не знав дечого. Як капітан, я міг використати той самий імплантат, щоби змусити його виконати наказ.

Я наказав механіку розвідати одну із сусідніх кімнат. Незабаром я почув звук, на який сподівався. Одна з почвар вилізла з технічних коридорів і стрибнула на цього дурня. Просто щоби переконатися, що жоден із них не вийде живим, я кинув гранату в коридор.

Я оглянув свої рани — моя нога сильно постраждала. Я перев’язав її та знову зміг ходити, але я також знав, що це тимчасовий захід — треба було справжнє лікування, яке я мав намір отримати за першої ліпшої нагоди.

Незважаючи на біль, мені вдалося дістатися до рубки, підриваючи дорогою закриті двері. Там я знайшов пілота й розповів їй про напад механіка. Вона занадто поспішала щоби перейматися. Пілот просто встановила координати стрибка для Землі. Ми не знали, чи достатньо двигунів працює, але вона хотіла ризикнути. Це залишило нам мало часу, щоби повернутися до гібернаторія. До стрибка залишилося всього кілька хвилин, і все живе, що в цей момент буде перебувати поза камерами гібернації — буде розчавлено екстремальним прискоренням.

Я сказав їй, щоб вона рухалася вперед, сподіваючись, що отримаю шанс зазирнути в лабораторію та закінчити власні справи. Але щось було неправильно... Можливо, те, як вона рухалася чи говорила? Я не міг сказати напевне, але, як капітан, я навчився не ігнорувати свої передчуття.

На щастя, в мене був журнальний ключ, який надавав мені повний доступ до облікового запису одного члена екіпажу — я вирішив перевірити листування пілота. Те, що я виявив, було шокуючим. Вона мала намір доправити корабель до якоїсь таємної бази на Марсі, де організація, про яку я ніколи раніше не чув, планувала використати почвар для невідомої темної мети.

Те, що почалося після цього, було справжнім пеклом. Поранений, оточений ворожими формами життя та без союзників, я викручувався як міг, аби лише залишитися в живих. Коли на дорозі постала доросла почвара, я використав усе паливо у своєму вогнеметі, намагаючись вбити її, але цього було недосить. Тварюка дотягнулася до мого плеча своїми слинявими щелепами. Я дістав револьвер і останньою кулею, котру беріг для себе зніс почварі голову.

Я вже втрачав свідомість від кровотечі, коли наш вчений натрапив на мене. Він саме прямував із лабораторії, де дослідив одну із туш почвар, і виявив слабкість їхнього виду. Виявляється, ми мали спільну мету! Він допоміг мені піднятися, і ми вирішили вшиватися з корабля разом. На жаль, він протримався не дуже довго. Мені довелося лишити вченого, коли його спіймав величезний самець. Це був важкий вибір, але хтось мав попередити Землю!

Нарешті, я дістався до евакуаційного шлюзу — та шлях було заблоковано. Там була вона, чекала на мене. Страшний звір, найбільший у своєму роді. Королева! А в мене залишився лише маленький вогнегасник, який я всюди носив. У відчаї я пожбурив ним у почвару. На диво, це спрацювало! Вона відступила, давши мені достатньо часу, щоб увійти в рятувальну капсулу та швидко її запустити.

Я ВИБРАВСЯ. Я ВИЖИВ.

Або принаймні я так вважав… Я відчуваю як щось ворушиться всередині мене. Я не знаю, скільки часу ще маю. Я залишаю це повідомлення на випадок, якщо хтось знайде цю капсулу.

Знищте моє тіло. Не досліджуйте цих істот. Не намагайтеся використовувати їх у будь-який спосіб.

Якщо ви хочете, щоби людство вижило — залиште їх і ніколи не повертайтеся.

Мітки: ,

06 квітня 2018

Dice Forge українською

Переклав правила Dice Forge українською.

Мітки: ,

16 березня 2018

Santorini українською

Переклав частину правил Santorini українською.
Золоте руно перекладу пізніше.

Мітки: ,

03 січня 2018

Patchwork українською

Переклав правила Patchwork українською.

Мітки: ,

13 грудня 2017

Living Planet українською

Переклав правила Living Planet українською.

Мітки: ,

01 грудня 2017

Terraforming Mars українською

Переклав правила Terraforming Mars українською.

Мітки: ,

20 жовтня 2017

Pandemic: Reign of Cthulhu українською

Переклав правила Pandemic: Reign of Cthulhu українською.

Мітки: ,

28 вересня 2017

Twilight Imperium 4ed українською

Перекладаю Сутінки Імперії українською


 

Мітки: ,

15 вересня 2017

Android: Netrunner українською

Переклав правила Android: Netrunner українською. Перекладав не оригінальні правила, а російський переклад — там все викладено стисло й доступно. Файл треба качати, бо онлайновий офіс ламає обтікання.

Мітки: ,

06 червня 2017

Twilight Imperium 3ed українською

Переклав Сутінки Імперії українською
Переклади треба качати, а не користуватись онлайн версією— вона крива через неправильне відображення колонок.

 

Мітки: ,

Evolution: Plantarum Українською

Перекладаю Evolution: Plantarum українською
Переклади треба качати, а не користуватися онлайн версією — вона крива через неправильне відображення кольорів.

Мітки: ,

The Witcher Adventure Game українською

Перекладаю The Witcher Adventure Game українською

Мітки: ,