Які існують варіанти для написання кращого непрограмувального тексту в Emacs?


58

Це роздвоєння з питання Які існують варіанти перевірки орфографії в Emacs?

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

Отже, давайте відкриємо з обов’язковою фразою запитання

Чи є пакети / бібліотеки / вбудовані програми, розроблені, щоб допомогти мені писати кращі, правильніші та стисліші тексти в Emacs?

Зокрема,

  • для перевірки правопису граматики . Щось схоже на (але сподіваємось, краще) перевірку орфографії MS Word, яка визнає, чи є речення граматично неправильним

  • для покращення фразування та виразів, які ви використовуєте. Щось за принципом Товариства мертвих поетів :

    Тому уникайте використання слова "дуже", тому що це лінь. Чоловік не дуже втомився, він виснажений. Не використовуйте дуже сумно, вживайте мороз. [...]

  • про все, про що я забув або не знаю, але ви можете подумати (фразування / пов'язане з удосконаленням мови, так ...)


"Все, що я забув", за своєю суттю занадто широке. "Вдосконалення фразування" теж жахливо розпливчасте.
Жил "ТАК - перестань бути злим"

Отже, я обмежив "що-небудь" тією частиною в дужках ... Крім того, я не бачу, яким можливим способом "поліпшення вашої фразування" може бути неясним у контексті написання.
elemakil

1
Поліпшення вашого фразування тощо - це поза темою, я думаю, що. Є сайти SE для того, щоб навчитися писати краще. Ваше запитання має бути обмежене тим, як Emacs може допомогти вам написати та редагувати текст. І це вже дуже широко - це можна вважати занадто широким для одного питання. Чи можете ви уявити, якщо всі запитання щодо написання довідки поєднуються лише з вашим одним питанням? Вам було б набагато краще зосередитися на одній речі за раз. І всі інші виграли б від цього також.
Дрю

1
Trad Unix мав styleі dictionя невпевнено знаю спробу повторного втілення їх як відкритого коду . Якщо інструменти дійсно працюють, додавання обгортки Emacs повинно бути одразу.
tripleee

2
Принаймні зараз комп’ютери не можуть ефективно покращити свій текст. Джеффрі К. Пуллум і Марк Ліберман багато пишуть про це, наприклад, див. Itre.cis.upenn.edu/myl/languagelog/archives/005061.html або languagelog.ldc.upenn.edu/nll/?p=10416 Як Приклад того, як це нерозумно, я встановив writegood-modeі смикнув у першому пункті "Мій старий" (із вищенаведеного посилання). writegood-modeвизначає "мого старого чоловіка вирізали за товстуна" як пасивного, чого це не так. Ці системи а) працюють недостатньо добре; б) ґрунтуються на поганих правилах щодо гарного письма.
Ерік Гецнер

Відповіді:


64

Я особисто дотримуватися писати речі org-modeз flyspell-modeі langtool...

org-modeє фантастичним для швидкого введення будь-якого документа в Emacs, flyspell піклується про написання, а langgool хвилює граматику. Все теж настроюється, тому ви можете налаштувати будь-що під вміст свого серця.

Ось швидкий невеликий набір в org-режимі з включеним langtool і flyspell; нічого надто особливого.

Якщо я запускаюсь так, langtool-correct-bufferяк це підказує, будь-які знайдені langtool помилки граматики виділяються одна за одною з низкою пропозицій у нижньому буфері. Я можу вибрати будь-якого з цих кандидатів відповідною цифровою клавішею або просто пропустити їх через [пробіл].

Крім того, flyspell дозволяє мені [Середній клацання] на написаних помилками словах, щоб побачити орфографічні пропозиції.

org-modeмає тонну форматів експорту; ви можете експортувати документ у форматі PDF, ODT або навіть як HTML. (Ви можете експортувати , використовуючи C-c C-eв org-mode)

Тепер, коли я опублікував свій шедевр у форматі PDF за допомогою LaTeX, це те, що я бачу, коли відкриваю його у переглядачі PDF ...

Це, мабуть, найпростіший спосіб скласти вишукані документи в відносно хорошому середовищі письма в Emacs ...

Гарна новина полягає в тому, що org-modeі flyspell-modeвключена за замовчуванням з більшістю версій Emacs. Погана новина полягає в тому, що langtool не є, і він дещо великий, і для нього потрібна Java ... Але якщо це вас не стримує:

Langtool - це граматична перевірка, яка зазвичай поєднується з Openoffice або Libreoffice. Сам інструмент - це проста утиліта командного рядка, тому відносно легко взаємодіяти з іншими програмами; хтось зв’язав це з Emacs.

Щоб додати його в Emacs, ви можете встановити його за допомогою M-x package-install langtool... Або, якщо у вас немає правильної репозиції (я використовую запропоновані тут .), Ви можете отримати .elфайл і включити його вручну звідси .

Наразі мій гачок орга-режиму налаштований так. (Відрізання невідповідних бітів.)

(add-hook 'org-mode-hook (lambda ()
   (progn
     ;; Snipped
     (auto-fill-mode t)

     ;; Spelling
     (flyspell-mode t)

     ;; Grammar
     (require 'langtool)
     (setq langtool-language-tool-jar "/path/to/LanguageTool.jar"))))

Очевидно, ви хочете замінити /path/to/LanguageTool.jarфактичний шлях до нього у вашій системі. Це портативний .jar-файл, тому розташування насправді не має значення.

Крім того, на відміну від flyspell-modelangtool вимагає запустити, M-x langtool-checkколи ви хочете граматики перевірити буфер ... Тож у вас немає фантазійної перевірки граматики під час введення тексту.

org-modeВи можете це зробити, і можна використовувати для написання простих файлів з невеликими нотатками, завершення рефератів з фантазійною графікою, статтями, книгами, ви їх називаєте ... Але оскільки це може зробити так багато, важко знати, з чого почати. Я знайшов, що це було найпростіше вчитися, починаючи з можливих способів експорту org-modeфайлу після того, як ви дізнаєтесь основи . Сайт в Org-режимі дуже корисний і інформативний, і про нього є багато допомоги на інформаційних сторінках ( C-h i, m Org Mode).

Удачі..! І сподіваюся, що це допомагає.


Це чудово ! langtoolнасправді виглядає дуже перспективно.
elemakil

1
Чи існує спосіб налаштування, langtoolщоб бути в курсі (La)TeXсинтаксису? Я б сказав, що приблизно половина помилок - це помилкові позитиви, викликані (La)TeXсинтаксисом 's, який трохи дратує.
елемакіл

1
На жаль, не наскільки мені відомо. Зазвичай я пишу свої речі простою орґією з дуже маленьким LaTeX, за винятком внутрішніх директив LaTeX. (Люблю #+LaTeX_CLASS_OPTIONS: [hidelinks,11pt]) Таким чином, у мене немає нічого, що langtoolмогло б забрати. Це не означає спосіб змінити те, де langtool звичайно не існує, а просто те, що це поза моїми конкретними знаннями з цього питання. Вибач ..!
Archenoth

15

Категорія EmacsWiki Написання - це місце для початку.

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

Тут немає сенсу перераховувати таку інформацію - зверніться до неї.

(Але, можливо, інші мають конкретні рекомендації.)

Я згадаю лише сторінку підкатегорій « Тезаурі» та «Синоніми» , яка містить більше посилань на інформацію про бібліотеки, що підтримують пошук синонімів.


Ці рекомендації та особистий досвід різних варіантів - це те, що мене найбільше цікавить :-)
elemakil

Чудово. Ви також можете знайти багато цього на сторінках вікі для цієї теми.
Дрю

@Drew: на сторінці emacswiki відсутній langtool.
Тобіас

@tobias: Так, будь ласка, додайте langtool до списку на вікі (будь-хто може редагувати вікі - це вікі ;-)).
Дрю

Зроблено. BTW: Ви можете подивитися на якесь (цікаве для ІМХО) питання + питання . Заздалегідь спасибі.
Тобіас

15

Я пишу романи за допомогою Emacs, і з часом розвинув робочий процес на основі певних унікальних його переваг. (Приклад: Мою останню книжку було задумано, складено та відредаговано разом із Emacs.) Це означає, що це не дорога без труднощів.

  • Org-режим

    Org-режим є причиною того, що я почав використовувати Emacs. Можливість складання та розгортання розділів рукопису ~ 50 К слів є неоціненною. Раніше я використовував програму Scrivener, але зачаровував її неповторними текстовими .scrivфайлами. Org-режим також має можливість легко переміщувати глави ( treesта subtrees) навколо (за допомогою M-arrow_key).

  • Маніпуляція текстом

    У доповненні до достатку EMACS 'текст-висновок, нарізка і наклеювати утилітами ( C-s, M-yі т.д. і т.п.) Я використовую режим бога і режим AVy , щоб знайти свій шлях навколо буфера. Модальне редагування, включене колишнім, допомагає при моєму артриті. Останнє - надзвичайно швидкий спосіб навігації по екрану за допомогою декількох натискань клавіш (як правило, на домашньому ряду).

  • Flyspell

    Це абсолютно адекватна перевірка орфографії, яка мені приносить користь щодня.

  • Магіт

    Нещодавно я почав використовувати Git через Bitbucket для управління моєю роботою з контролем версій. Я початківець, але є величезні переваги, і Magit - чудовий інтерфейс до цієї системи. Хоча Git не зовсім оптимізовано для написання роману, він працює досить добре.

  • TODO та КОМЕНТАР

    Org-режим має можливість визначати завдання, які потрібно виконувати. З великою МС може бути 40 і більше речей, які мені потрібно запам'ятати, від малих до великих. Їх можна визначити і навіть класифікувати за ключовими словами TODO . Також можуть бути збільшені заголовки різних приміток та ідей COMMENT, які не експортуються, коли я надсилаю файл .odt.

  • Розділене вікно

    Я часто працюю над файлом із розділеним вікном, показуючи два місця в історії. Я часто порівнюю одне місце розташування з іншим. Довгий час я робив це з split-window-right( C-x 3), але нещодавно перейшов на clone-indirect-buffer-other-window( C-x 4 c). Перевага тут полягає в тому, що якщо я зміню стан складання вікна A, він не змінює стан складання вікна B.

  • Один недолік

    Літературне видавництво працює на MSWord. Це можливо , щоб отримати від .orgдо , .docале не для мене легко. В даний час я використовую Emacs ' org-exportдля порту файлів .odt, які я редагую за допомогою Libreoffice . Я вручну або за допомогою макросів досягаю форматування, необхідного для більшого світу видавничої справи, як я це знаю, а потім зберігаю файл у .docФорматування не є складним, але воно потрібно.

    Процес редакції передбачає значну туди і назад, а це означає, що я серійно експортую до Libreoffice та повторно імпортую до Emacs. На кінці Emacs макроси можуть отримати зірочки для моїх заголовків та виправити смарт-котирування Word. В даний час я не маю гарного рішення курсивом. Іноді я ввожу помилки. Якби Emacs не було таким дивовижним середовищем для редагування тексту, я б через це не страждав.

    Міккі Петерсен має чудову публікацію в блозі, в якій описує власний робочий процес для своєї книги Mastering Emacs, яка використовує diffбуфери для сортування змін та коментарів (за межами мого кена на даний момент), а також вимагає від свого літературного редактора / видавця переглянути текстові файли. (що я отримав відкат, коли я спробував це).

  • Висновок

    Emacs - це найефективніший інструмент, який я знайшов для написання та редагування романів. Існує також багато режимів, які можуть бути корисними для письменників інших видів прози (наприклад, org2blog для складання та розміщення блогів Wordpress та AUCTeX для написання файлів LaTeX).

    Я хотів би побачити майбутнє, де зв’язок між собою .txtі .docбув більш гладким для того, який я пишу. Це включає:

    • налаштування Emacs використовувати подвійний інтервал або один простір за запитом
    • вставлення вручну розривів сторінки (наприклад, після титульної сторінки)
    • курсив, який не провалюється навколо деяких розділових знаків
    • створення простих, правильно виправданих заголовків на всіх сторінках, крім заголовка

    Є обхідні шляхи ( ось повідомлення в блозі Шона Міллера про те, щоб Emacs послідовно показував курсив, що включає розділові знаки, що заохочує використання простору нульової ширини), і, звичайно, речі, які я ще не знаю, як робити, як хтось із літературна, а не програмна сторона світу редагування тексту.

Тим часом тому я поцікавився публікацією групи новин у форматі rms під назвою "Emacs як текстовий процесор":

25 років тому я сподівався, що ми поширимо Emacs на обробку тексту WYSIWG. Ось чому ми додали властивості тексту та шрифти змінної ширини. Однак для досягнення цього ще потрібно більше функцій.

Чи могли б люди почати працювати над необхідними функціями?

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


1
можливо, скасування допоможе вам? імпортер doc для emacs emacswiki.org/emacs/UnDoc
Джейсон Мірк

Я буду дивитись. Я раніше користувався антисловом, і це було більше роботи, ніж це було варто, через зміни форматування, які виникають під час вилучення. Дякую за пораду!
Стівен Арнтсон

11

Відкрутіть оригінальну відповідь на пов’язане питання .

  • Перевірка граматики: Я ще не знаю жодних виділених граматичних аналізаторів для emacs. Я згадаю про writegood-modeдоступне в MELPA, яке виділяє в буфері слова про малі слова та пасивний голос. Це доставить вас на півдорозі.

    Інша, можливо корисна бібліотека, dupwords.elяка може виділити, якщо певне слово (як правило, іменники та займенники) вживається більше одного разу в одному реченні. Це більш загальне, ніж пошук повторних суміжних слів, якими можна керувати за допомогою мухоловки.

  • Все інше: виправлення мови взагалі - важка проблема. При цьому, якщо в цій області існує будь-яка зовнішня програма / сценарій, зазвичай це легко зробити інтерфейсом з emacs.

Якщо ви використовуєте LaTeX для написання, я особисто знайшов такі сценарії рубіну досить корисними для перевірки стилю та послідовності. Я просто викликаю команду shell з самого мінібуфера. Глядач, здатний до прямого та зворотного пошуку, також цінний при коректурі. У MS Windows я використовую sumatra-forwardпакет від ELPA для подальшого пошуку в засобі перегляду SumatraPDF.

  1. перевірка стилю Ніл Спрінг
  2. дефіс-консистенція Ніла Конвей

0

Ця порада дозволить вам форматувати слова / регіони (напівжирним шрифтом, курсивом, прокресленням, але також паролями, цитатами тощо) одним натисканням клавіші , замість додавання ' /', ' *' тощо на початку та в кінці ваш текст. Я вважаю це корисним під час написання, як і при перечитанні та налагодженні написаних текстів:

(defun xa-bold (&optional char)
  (interactive)
  (unless (region-active-p)
    (backward-word)
    (mark-word))
  (if (region-active-p)
      (insert-pair 1 ?* ?*)
    (insert "//")
    (backward-char))
  (forward-word)
  (right-char))

Цей код призначений для отримання жирного слова / регіону. Все, що вам потрібно зробити - це замінити перше і друге " *" (insert-pair 1 ?* ?*)відповідно до того, який тип форматування ви хочете. Щодо паронів, то йдіть з (insert-pair 1 ?\( ?\))

Просто прив’яжіть до нього ключ, і ви закінчите:

 (define-key org-mode-map (kbd "M-&") 'xa-bold)

Примітка. Я міг вільно додати незначну зміну до коду, який я вкрав тут. Я додав (forward-word) (right-char)наприкінці функції, тому що, коли ви пишете і хочете відформатувати слово, ви хочете pointпіти за символом форматування, щоб потім можна було продовжувати писати. Але ви, можливо, захочете видалити (right-char)для паролів або цитат, залишитися всередині пароля або цитати і продовжувати писати.

Я не програміст, просто ентузіаст emacs, який часом грає з існуючим кодом. І я хочу, щоб Emacs став моїм текстовим процесором!

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.