Narzędzia do formatowania tekstu

14

Robię notatki w formacie tekstowym, na przykład:

## Lista rzeczy do zrobienia
1. zrób to
2. zrób to

## COŚ
### BYLE CO
1. zrób to
2. zrób to 

Czy istnieją narzędzia do zmiany tego tekstu na HTML lub LaTeX? Znajduję Sphinx , ponieważ dotyczy formatowania kodu w języku Python. Byłoby wspaniale, że istnieje narzędzie do bardziej ogólnego formatowania tekstu.

prosseek
źródło

Odpowiedzi:

30

Minęło prawie osiem lat, odkąd napisałem odpowiedź poniżej, nie używam już Grutatxt, a teraz prawie wyłącznie używam MultiMarkdown, który dodaje wiele przydatnych rozszerzeń do Markdown - rozszerzoną funkcją, której najczęściej używam, są tabele.

Istnieje wiele rozszerzeń Markdown, które nie są w 100% kompatybilne, ale można z nich korzystać prawie zamiennie, jeśli zadbasz o użycie wspólnego podzbioru funkcji

  • MultiMarkdown
  • Markdown o smaku Github
  • PHP Markdown Extra

Istnieje dobra obsługa supersetów Markdown w wielu aplikacjach i językach. Używałem wsparcia PHP, Perl i Go (golang) dla rozszerzonego Markdown

Istnieje wiele aplikacji komputerowych i mobilnych, które obsługują edycję Markdown z podglądem na żywo itp. Nadal jednak używam edytora zwykłego tekstu.

Osobiście nie używam Pandoc, ale uważam, że jest to dobrze utrzymany i prawdopodobnie najbardziej wszechstronny lekki procesor znaczników. Powinien znajdować się na krótkiej liście.


Proponuję zacząć od spojrzenia na Markdown , Textile i Grutatxt . Ale jest wiele:

Lista znaczników tekstowych i narzędzi

Inne listy

Grutatxt

Podoba mi się Grutatxt, ponieważ wydaje mi się, że jest on najbliższy nieosłoniętemu zwykłemu tekstowi, a zatem zwykły tekst jest bardzo czytelny. Używam GrutaTxt do generowania HTML i PDF (przez LaTeX). Dobrze radzi sobie z tabelami, których Markdown nie zna do tej pory. Mam skrypt Perla, aby dodać spis treści i podłączyć arkusz stylów CSS. Używam recode do konwersji kodowania znaków na UTF8. Mam to wszystko w prostym pliku makefile, więc mogę po prostu edytować plik tekstowy i pisać, makeaby opublikować go jako stronę internetową (i jednocześnie PDF).

Porównanie znaczników dla GrutaTxt, ASCIIDOC i APT

NL= nowa linia, SP= spacja

Title
  Markdown      Title NL =====
  Grutatxt      Title NL =====
  ASCIIDOC      Title NL =====
  APT           --- NL Title NL --- NL Author NL --- NL Date

H1
  Markdown      Head NL ====   or # Head #
  Grutatxt      Head NL ====
  ASCIIDOC      Head NL ----   or   == Head
  APT           * Head

H2
  Markdown      Head NL ----   or ## Head ##
  Grutatxt      Head NL ----
  ASCIIDOC      Head NL ~~~~   or   === Head
  APT           ** Head

H3
  Markdown      ### Head ###
  Grutatxt      Head NL ~~~~
  ASCIIDOC      head NL ^^^^   or   ==== Head
  APT           *** Head

H4
  Markdown      -
  Grutatxt      -
  ASCIIDOC      Head NL ++++   or   ===== Head
  APT           **** Head       

Bold
  Markdown      **word**
  Grutatxt      *word*
  ASCIIDOC      .word
  APT           <<word>>

Italic
  Markdown      *word*
  Grutatxt      _word_
  ASCIIDOC      -
  APT           <word>

Code
  Markdown      `words`
  Grutatxt      `words'
  ASCIIDOC      `words`
  APT           <<<words>>>

Line Break
  Markdown      words SP SP NL
  Grutatxt      -
  ASCIIDOC      -
  APT           words \ NL words

Non breaking space
  Markdown      -
  Grutatxt      -
  ASCIIDOC      -
  APT           word\ word

Comment
  Markdown      -
  Grutatxt      -
  ASCIIDOC      -
  APT           ~~ comments

HyperLink
  Markdown      [name](http://a.b.c)
  Grutatxt      http://a.b.c(name)
  ASCIIDOC      <<a.b.c, name>>
  APT           http://a.b.c
                {{{http://a.b.c}name}}

Anchor
  Markdown      -
  Grutatxt      -
  ASCIIDOC      [[name]]
  APT           {name}

Unordered List
  Markdown      SP SP - words
  Grutatxt      SP * words
  ASCIIDOC      SP - words
  APT           SP * words

Ordered List
  Markdown      SP SP 1. words
  Grutatxt      SP # words
  ASCIIDOC      -
  APT           [[1]] words

Definition
  Markdown      -
  Grutatxt      SP * term: definition
  ASCIIDOC      term:: NL definition
  APT           [term] definition

Table
  Markdown      -
  Grutatxt      +---+---+
                | a | b |
                +---+---+
  ASCIIDOC      ~~~~~
                h,h,h
                ~~~~~
                a,b,c
                d,e,f
                ~~~~~
  APT           *---*---+---:
                |ctr|lft|rgt|
                *---*---+---:
                caption

Image
  Markdown      ![alt](http://a.b.c.png)
  Grutatxt      << NL <img src="cow.jpg" /> NL >>
  ASCIIDOC      -
  APT           [cow.jpg] caption

Preformatted
  Markdown      SP SP SP SP words    or <pre> NL words NL </pre>
  Grutatxt      SP words
  ASCIIDOC      SP words
  APT           --- NL words NL ---

Horizontal Rule
  Markdown      NL ------ NL      
  Grutatxt      ____
  ASCIIDOC      -
  APT           ====

Citation
  Markdown      -
  Grutatxt      ``words
  ASCIIDOC      -
  APT           -
RedGrittyBrick
źródło
reStructuredText to najczęściej opisywany projekt formujący testy. Pliki PDF / HTML / slajdy. Spis treści, indeksy offline, książki drukowane. Może być przekonwertowany na inny format przez Pandoc . Tylko nie używaj słabego
formowania
1

Innym formatem jest tekstylny . Markdown jest mniej więcej comme il faut .

kiwi
źródło
0

Tryb Org wygląda idealnie.

Twoje znaczniki są już bardzo podobne, a tryb org ma wiele formatów wyjściowych, w tym te spełniające twoje wymagania.

johntait.org
źródło