Обрабатывать абзацы быстро - PullRequest
0 голосов
/ 05 ноября 2018

Есть ли рекомендуемый способ обработки абзацев в swift? Я очень новичок в Swift, поэтому я не уверен, что рекомендуемое решение или какое-либо решение по этому вопросу.

Я хочу иметь возможность открывать файл .txt и иметь возможность выбрать абзац, при выборе абзаца необходимо распечатать выбранный абзац на этикетке.

У меня пока нет кода для этого, кроме открытия и просмотра текстового файла, выполнив следующие действия:

    let file = "/Users/wade/Desktop/ht.txt"
    let path=URL(fileURLWithPath: file)
    let text=try! String(contentsOf: path)
    textView.stringValue = text

Как только файл .txt отобразится, я хочу иметь возможность щелкнуть абзац и отобразить абзац в отдельной метке

Я не исправлен при использовании файлов .txt, если есть лучший формат для достижения этого

Я предполагаю, что печать на этикетке должна быть такой же простой, как

 let selectedParagraph = //however we identify the paragraph stringvalue

 let thelabel = selectedParagraph.stringValue

Но мне нужно знать, как определить и получить текст из абзаца

1 Ответ

0 голосов
/ 05 ноября 2018

Создайте подкласс NSTextView и используйте его для отображения всего текста. Это всегда будет выделять текст по абзацу:

class ParagraphTextView: NSTextView {

    override func selectionRange(forProposedRange proposedCharRange: NSRange,
                                 granularity: NSSelectionGranularity) -> NSRange {

        return super.selectionRange(forProposedRange: proposedCharRange,
                                    granularity: .selectByParagraph)
    }

}

Затем установите делегата ( NSTextViewDelegate ) и отследите изменения выбора текстового представления, чтобы обновить вторичную метку с текущим выбором.

...