Strona główna Polish Python Coders Group
   Strona główna   Pomoc Zaloguj się Rejestracja  
Witamy, Gość. Zaloguj się lub zarejestruj.
Czy dotarł do Ciebie email aktywacyjny?

Zaloguj się podając nazwę użytkownika, hasło i długość sesji

Aktualności: PyData Warsaw :: https://pydata.org/warsaw2018/
Szukaj Szukaj
Strony: [1]   Do dołu
Drukuj
Wątek: sphinx writer  (Przeczytany 4921 razy)
« : 22:48 04/10/17 »
lulek Offline
Advanced Python User

Zobacz profil WWW
**

Reputacja: 7
Wiadomości: 119


Za pomocą składni restructuredtext można sprawnie tworzyć dokumenty tekstowe gotowe do druku. Sphinx daje dodatkowe możliwości m.in. łączenia kilku plików rst w całość.
Tutaj nieco o tym zagadnieniu
http://pedrokroger.net/using-sphinx-write-technical-books/
Nie znalazłem jednak wygodnego narzędzia które pozwalałoby łatwo tworzyć taki dokument bez konieczności pracy z linią komend, konfigurowania pliku conf.py itd. Chodzi o program który można by zaproponować np inżynierowi jako alternatywę nawet do Worda.
Po ponad tygodniu zmagań powstał tebe sphinx writer (pracuje jak wersja alpha)
https://bitbucket.org/lukaszlaba/tebe
Możliwości:
(praca z pojedynczym plikiem rst)
- renderowanie na żywo aktualnego dokumentu (za pomocą docutils),
- możliwość eksportu aktualnego dokumentu do pdf (za pomocą rst2pdf),
- mozliwość drukowania podglądu aktualnego dokumentu na systemowej drukarce,
(praca na katalogu plików rst - czyli takim projekcie w sensie sphonxowym)
- jeśli brak w katalogu użycie dostarczanego z programem domyślnego pliku conf.py
- jeśli brak automatyczne generowanie pliku index.rst
- budowanie wersji html i jej podgląd po prawej stronie
- export projektu sphinxowego do pdf
(ponadto)
- możliwe jest również użycie plików markdown

Co istotne program w katalogu z którego otwieramy pliki rst nie zapisuje żadnych dodatkowych katalogów będących wynikiem użycia sphinxa - wszystko ląduje w przygotowanych tymczasowych katalogach systemowych które są usuwane wraz z  zamknięciem programu. Tylko generowane pliki pdf lądują w katalogu źródłowym jeśli taka opcja generacji została użyta.

Do czego ma służyć program:
- przede wszystkim wygodne tworzenie dokumentów, artykułów a nawet całych książek,
- nadaje się wiec również do edycja i podgląd dokumentacji docs które potem ostatecznie publikujemy na readthedocs.org.

Może znacie istniejące już takie narzędzie i całe to kodowanie jest niepotrzebne ? Uśmiech Ale zaznaczam, że chodzi tu o gotowe do użycia narzędzie dla ludu i dające możliwości Sphinxa a nie samego rst.

Punktem startowym był projekt sphinx-gui działający w podstawowym zakresie jako sztywne gui sphinxa i tam działało tylko generowanie i podgląd html. Chyba projekt utknął na fazie pre-alpha. Koniec końców z tego kodu i jego struktury nie zostało wiele ale był pewną inspiracją.
https://github.com/audreyr/sphinx-gui

Puki co zamierzam kontynuować prace ponieważ potrzebuje takiego narzędzia do codziennej pracy (pożegnanie z Wordem i temu podobnymi) - chyba, że okaże się coś takiego już istnieje.
Ponadto program SeePy (o którym w innym wątku) potrafi exportować raporty jako pliki markdown (w przyszłości również rst) więc mogą one stanowić całe fragmenty publikacji (osobne pliki md/rst) zawierającej obliczenia wykresy itp. i po złożeniu dawać gotową publikację czy projekt.
Mile widziane opinie co do koncepcji programu.
Gdyby ktoś chciał włączyć się w tworzeni projektu to zapraszam.

Jak idea nie padnie to niebawem testowa wersja instalacyjna będzie na PyPI i stworzę też dokumentację. Teraz gdyby chcieć uruchomić to trzeba zainstalować zależności i po prostu zaciągnąć repo oraz uruchomić __main__.py



Zapisane
« Odpowiedz #1 : 23:00 10/10/17 »
DJangoL Offline
Professional Python User

Zobacz profil
***

Reputacja: 27
Wiadomości: 377


Wygląda interesująco, ale jeśli to ma zastąpić Worda to trochę przesadziłeś chyba Mrugnięcie Wiele osób ceni sobie pracę z poziomu GUI.

Widzę, że zrobiliście duże postępy jeśli chodzi o SeePy - fajnie to teraz wygląda.

Zapisane
« Odpowiedz #2 : 23:49 12/10/17 »
lulek Offline
Advanced Python User

Zobacz profil WWW
**

Reputacja: 7
Wiadomości: 119


W moim przypadku zastąpi Wordopodobne w 100% z korzyścią dla zdrowia psychicznego bo frustruje mnie ten program od zawsze - style tekstu kocham najbardziej Szok Nie wiem czy wiesz ale teraz modne są wstążki narzędzi a nie poczciwe stare paski narzędzi. Wstążka ma karty, karty maja ikonki mniejsze większe i jeszcze takie rozwijane - można zwariować, ja dziękuje za takie GUI. Wiec przy tym rst w planintext to jest jak haiku zen - spokojnie skupiasz się na treści.
---
Co do SeePy. Nie tylko wygląda ale i działa - polecam wypróbować Uśmiech.
Zapisane
« Odpowiedz #3 : 03:51 10/02/18 »
lulek Offline
Advanced Python User

Zobacz profil WWW
**

Reputacja: 7
Wiadomości: 119


Udało mi się ostatnio przysiąść do tematu.

Repo na buitbucket:
https://bitbucket.org/lukaszlaba/tebe
Wideo możliwości aktualnymi programu:
https://www.youtube.com/watch?v=TugdgkslouE&feature=youtu.be
Jest też dokumentacja na redthedics - w tracie opracowania:
https://tebe.readthedocs.io

Pierwszą wersję alpha udostępnię na PyPI w ciągu dwóch tygodni myślę.

Projekty spxinxowe jeśli nie mają plików conf.py i index.rst to program korzysta z domyślnego własnego conf.py zaś plik index.rst może stworzyć automatycznie. W przypadku braku conf.py możliwe do wyboru motywy sphinx (sphinx theme). W zasadzie wiec program nie wymaga więcej niż tylko katalogu z plikami rst/md aby zbudować sphinxa - tj. podgląd html lub wygenerować pdf - i w tym katalogu nie generuje żadnych dodatkowych roboczych plików, wszystko trafia do systemowych plików tymczasowych.

Myślę też o dystrybucji tego programu w wersji zmrożonej, a nie mam w tym doświadczenia - gdyby ktoś był biegły w tych sprawach i miał ochotę wspomóc projekt to zapraszam (będzie lista contrinutors). Uwagi sugestie mile widziane.
Zapisane
« Odpowiedz #4 : 01:02 13/02/18 »
gr00by Offline
Hello World!

Zobacz profil
*

Reputacja: 5
Wiadomości: 36


Cześć.

Fajny pomysł.

Sam renderer byłby wystarczający, bo dobrym writerem jest vim Mrugnięcie

Coś w ten deseń:
https://github.com/JamshedVesuna/vim-markdown-preview

Osobiście wolę vim w tmuxie zamiast czegokolwiek z GUI, szczególnie jak to forsuje niewygodne edytory. Dlatego sprytny sphinxdoc server byłby mile widziany.

Wyzwaniem jest skorelowanie bufora edytora z renderowaną stroną dokumentu, gdzie trzeba zachować aktualne referencje do sekcji znajdujących się także w innych dokumentach. Server powinien reagować nie tylko na zmiany wyświetlanego pliku. Prawdopodonie powinien obserwować zmiany wszystkich plików projektu przez jakieś inotify.

PS. Zamiast wordopodobnych - LaTeX. Natomiast SphinxDoc do tworzenia i utrzymywania dokumentacji.
Zapisane
« Odpowiedz #5 : 00:27 14/02/18 »
lulek Offline
Advanced Python User

Zobacz profil WWW
**

Reputacja: 7
Wiadomości: 119


W założeniu ma to bym narzędzie też np. dla inżynierów-nieprogramistów którzy o programowaniu z reguły nie wiele wiedza a praca z linia komend nie wchodzi w grę stąd koncepcja wszystko w jedyny. Ja prywatnie też chcę się przesiąść z pisaniem wszelkich tekstów na rst/md i sphinx i pożegnać ze wspomnianymi wordopodobnymi. Mam też dokumentacje sphinx kilku projektów upublicznione na readthedocs i bardzo wygodnie się na nich pracuje tym wynalazkiem.

Sam edytor wymaga jeszcze dopracowania - sprawdzanie pisowni językowej  i może podświetlanie składni są w najbliższych planach.

Pisanie w LaTeX jest na pewno bardziej profesjonalne ale też dużo bardziej skomplikowane i tego już inżynier mógłby nie znieść Uśmiech. Swego czasu robiłem podejścia do LaTeX ale odpuściłem temat.

Nie wiem czy dobrze zrozumiałem sens tego sphinxdoc servera ale w sumie niewiele trzeba by program mógł pracować w taki trybie, brakuje tylko watchera zmian plików w katalogu który wyzwalałby ponowne budowanie sphinx html. Okna edytora i eksploratora już teraz można zwinąć i zostawić tylko podgląd. Jest to pomysł na nową funkcjonalność - czyli taka opcja opcja 'przejdź w tryb sphinxdoc server'. Wtedy edytujesz zawartość katalogu source w sphinx jakimkolwiek narzędziem a podgląd uaktualnia się po zmianach w tym katalogu.
Zapisane
« Odpowiedz #6 : 02:18 19/02/18 »
lulek Offline
Advanced Python User

Zobacz profil WWW
**

Reputacja: 7
Wiadomości: 119


Dostępna pierwsza wersja 0.1.6 - beta do testowania
https://bitbucket.org/lukaszlaba/tebe
https://tebe.readthedocs.io

Pakiet instaluje się przez pip. Potrzebne zależności aktualnie trzeba doinstalować ręcznie. Paczkę można też ściągnąć i w niej odpalić Tebe.py.

Zapisane
Strony: [1]   Do góry
Drukuj
Skocz do:  

© 2007 - 2018 Polish Python Coders Group
Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines | Theme by PixelSlot