Giter VIP home page Giter VIP logo

cstypo's Introduction

cstypo

Balíček pro zkrášlení českých textů aplikováním základních typografických pravidel. Nesnaží se o pokrytí veškerých českých pravidel, spíše o aplikaci základních a to hlavně těch, které jsou na webu nejvíce vidět.

https://travis-ci.org/yetty/cstypo.png?branch=master https://coveralls.io/repos/yetty/cstypo/badge.png?branch=master https://pypip.in/v/cstypo/badge.png https://pypip.in/d/cstypo/badge.png

Pozor! Aplikování typografických pravidel na delší texty je poměrně výpočetně náročná operace. Zvažte kešování těchto textů.

Instalace

pip install cstypo

API

  • cstypo.parser.TxtParser

    Výchozí třída pro zpracování textu. Použití:

    parser = cstypo.parser.TxtParser(text)
    print parser.parse()       # zformátovaný text
    

    Je možné využít samostatně jednotlivé metody aplikující určitá pravidla:

    • cstypo.parser.TxtParser.parse_ellipsis
    • cstypo.parser.TxtParser.parse_en_dash
    • cstypo.parser.TxtParser.parse_em_dash
    • cstypo.parser.TxtParser.parse_dates
    • cstypo.parser.TxtParser.parse_arrows
    • cstypo.parser.TxtParser.parse_plusminus
    • cstypo.parser.TxtParser.parse_dimension
    • cstypo.parser.TxtParser.parse_quotes
    • cstypo.parser.TxtParser.parse_prepositions
    • cstypo.parser.TxtParser.parse_last_short_word
    • cstype.parser.TxtParser.parse_hyphen
  • cstypo.parser.HtmlParser

    Potomek třídy TxtParser, který nejdříve escapuje veškeré HTML tagy, aplikuje typografická pravidla na získaný text a vratí tagy zpět.

Django

Pro použití ve frameworku Django je připraven filtr typify v souboru cstags.

Nejdříve je potřeba cstypo přidat do INSTALLED_APPS

INSTALLED_APPS = (
    ...
    'cstypo',
)

Poté je možné začít v šablonách používat filtr.

{% load cstags %}

{{ text|typify }}                # zpracování obyčejného textu (výchozí)
{{ text|typify:'txt' }}          # ...

{{ text|typify:'html' }}         # zpracování html
{{ text|typify:'html'|safe }}    # pro povolení vypsání je potřeba filter safe

{% filter typify:'html' %}       # zpracování bloku
<h1>{{ title }}</h1>
<p>{{ text }}</p>
{% endfilter %}

CLI

cstypo

Usage:
    cstypo [--type (txt|html)] <input>
    cstypo -h | --help
    cstypo -v | --version

Options:
    -h --help               show this screen.
    -v --version            show version.
    --type                  type of parsed file (txt default).

Python 3

Oproti originální verzi by balíček měl fungovat v Pythonu 3. Z řetězců a regulárních výrazů je odstraněn prefix u resp. ur.

cstypo's People

Contributors

yetty avatar x0nix avatar michalraska avatar snakeyyy avatar illagrenan avatar

Watchers

 avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.