From f80ab392679991c8af527ede23a207ba2c07421a Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Fri, 5 May 2023 13:44:53 +0000 Subject: automatic import of python-django-mdeditor --- python-django-mdeditor.spec | 750 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 750 insertions(+) create mode 100644 python-django-mdeditor.spec (limited to 'python-django-mdeditor.spec') diff --git a/python-django-mdeditor.spec b/python-django-mdeditor.spec new file mode 100644 index 0000000..749c9f1 --- /dev/null +++ b/python-django-mdeditor.spec @@ -0,0 +1,750 @@ +%global _empty_manifest_terminate_build 0 +Name: python-django-mdeditor +Version: 0.1.20 +Release: 1 +Summary: A simple Django app to edit markdown text. +License: GPL-3.0 License +URL: https://github.com/pylixm/django-mdeditor +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/6b/57/407196a6f3bfe2c07bc710afb312bc47395823de55393068b5acf113ee2b/django-mdeditor-0.1.20.tar.gz +BuildArch: noarch + + +%description +# django-mdeditor + + +[![ENV](https://img.shields.io/badge/release-v0.1.20-blue.svg)](https://github.com/pylixm/django-mdeditor) +[![ENV](https://img.shields.io/badge/中文-v0.1.20-blue.svg)](./README_CN.md) +[![ENV](https://img.shields.io/badge/Gitter-v0.1.20-blue.svg)](https://gitter.im/django-mdeditor/Lobby) +[![ENV](https://img.shields.io/badge/python-2.x/3.x-green.svg)](https://github.com/pylixm/django-mdeditor) +[![ENV](https://img.shields.io/badge/django-1.7+-green.svg)](https://github.com/pylixm/django-mdeditor) +[![LICENSE](https://img.shields.io/badge/license-GPL3.0-green.svg)](https://github.com/pylixm/django-mdeditor/master/LICENSE.txt) + +![](./django_and_editor.png) + +**Django-mdeditor** is Markdown Editor plugin application for [django](djangoproject.com) base on [Editor.md](https://github.com/pandao/editor.md). + +**Django-mdeditor** was inspired by great [django-ckeditor](https://github.com/django-ckeditor/django-ckeditor). + +**Note:** + +- For Markdown page rendering issues, backend rendering is recommended. Because `Editor.md` has not been updated for a long time, some bugs and compatibility issues need to be debugged. Of course, front-end students can choose. +- Regarding the `Jquery` conflict, it cannot be deleted because it is required by the admin backend. It is recommended to separate the editing page on a single page or a full screen directly, using its own static file to distinguish it from other pages. + +## Features + +- Almost Editor.md features + - Support Standard Markdown / CommonMark and GFM (GitHub Flavored Markdown); + - Full-featured: Real-time Preview, Image (cross-domain) upload, Preformatted text/Code blocks/Tables insert, Search replace, Themes, Multi-languages; + - Markdown Extras : Support ToC (Table of Contents), Emoji; + - Support TeX (LaTeX expressions, Based on KaTeX), Flowchart and Sequence Diagram of Markdown extended syntax; +- Can constom Editor.md toolbar +- The MDTextField field is provided for the model and can be displayed directly in the django admin. +- The MDTextFormField is provided for the Form and ModelForm. +- The MDEditorWidget is provided for the Admin custom widget. + + +## Quick start + +- Installation. +```bash + pipenv install django-mdeditor + # or + pip install django-mdeditor +``` + +- Add `mdeditor` to your INSTALLED_APPS setting like this: +```python + INSTALLED_APPS = [ + ... + 'mdeditor', + ] +``` + +- add frame settings for django3.0+ like this: + +```python +X_FRAME_OPTIONS = 'SAMEORIGIN' +``` + +- Add 'media' url to your settings like this: +```python +MEDIA_ROOT = os.path.join(BASE_DIR, 'uploads') +MEDIA_URL = '/media/' + +``` +Make folder `uploads/editor` in you project for media files. + +- Add url to your urls like this: +```python +from django.conf.urls import url, include +from django.conf.urls.static import static +from django.conf import settings +... + +urlpatterns = [ + ... + url(r'mdeditor/', include('mdeditor.urls')) +] + +if settings.DEBUG: + # static files (images, css, javascript, etc.) + urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) + +``` + +- Write your models like this: +```python +from django.db import models +from mdeditor.fields import MDTextField + +class ExampleModel(models.Model): + name = models.CharField(max_length=10) + content = MDTextField() +``` + +- Register your model in `admin.py` + +- Run `python manage.py makemigrations` and `python manage.py migrate` to create your models. + +- Login Admin ,you can see a markdown editor text field like this: + +![](/screenshot/admin-example.png) + + +## Usage + +### Edit fields in the model using Markdown + +Using Markdown to edit the fields in the model, we simply replace the `TextField` of the model with` MDTextField`. + +```python +from django.db import models +from mdeditor.fields import MDTextField + +class ExampleModel (models.Model): +    name = models.CharField (max_length = 10) +    content = MDTextField () +``` + +Admin in the background, will automatically display markdown edit rich text. + +Used in front-end template, you can use like this: +```python +{% load staticfiles %} + + +     +         + +     +     +        
+            {% csrf_token %} + {{ form.media }} + {{ form.as_p }} +            

+         +     + + +``` + +### Edit fields in the Form using markdown + +Use markdown to edit fields in the Form, use `MDTextFormField` instead of` forms.CharField`, as follows: +```python +from mdeditor.fields import MDTextFormField + +class MDEditorForm (forms.Form): +    name = forms.CharField () +    content = MDTextFormField () +``` + +`ModelForm` can automatically convert the corresponding model field to the form field, which can be used normally: +```python +class MDEditorModleForm (forms.ModelForm): + +    class Meta: +        model = ExampleModel +        fields = '__all__' +``` + +### Use the markdown widget in admin + +Use the markdown widget in admin like as : +```python +from django.contrib import admin +from django.db import models + +# Register your models here. +from. import models as demo_models +from mdeditor.widgets import MDEditorWidget + + +class ExampleModelAdmin (admin.ModelAdmin): +    formfield_overrides = { +        models.TextField: {'widget': MDEditorWidget} +    } + + +admin.site.register (demo_models.ExampleModel, ExampleModelAdmin) +``` +### Customize the toolbar + +Add the following configuration to `settings`: +```python +MDEDITOR_CONFIGS = { + 'default':{ + 'width': '90% ', # Custom edit box width +     'height': 500, # Custom edit box height +     'toolbar': ["undo", "redo", "|", +                 "bold", "del", "italic", "quote", "ucwords", "uppercase", "lowercase", "|", +                 "h1", "h2", "h3", "h5", "h6", "|", +                 "list-ul", "list-ol", "hr", "|", +                 "link", "reference-link", "image", "code", "preformatted-text", "code-block", "table", "datetime", +                 "emoji", "html-entities", "pagebreak", "goto-line", "|", +                 "help", "info", +                 "||", "preview", "watch", "fullscreen"], # custom edit box toolbar +     'upload_image_formats': ["jpg", "jpeg", "gif", "png", "bmp", "webp"], # image upload format type +     'image_folder': 'editor', # image save the folder name +     'theme': 'default', # edit box theme, dark / default +     'preview_theme': 'default', # Preview area theme, dark / default +     'editor_theme': 'default', # edit area theme, pastel-on-dark / default +     'toolbar_autofixed': True, # Whether the toolbar capitals +     'search_replace': True, # Whether to open the search for replacement +     'emoji': True, # whether to open the expression function +     'tex': True, # whether to open the tex chart function +     'flow_chart': True, # whether to open the flow chart function +     'sequence': True, # Whether to open the sequence diagram function + 'watch': True, # Live preview + 'lineWrapping': False, # lineWrapping + 'lineNumbers': False, # lineNumbers + 'language': 'zh' # zh / en / es + } +     +} +``` + +## Feedback + +Welcome to use and feedback! + +You can create a [issue](https://github.com/pylixm/django-mdeditor/issues) or join in QQ Group. + +![](screenshot/QQ.png) + +## Reference + +- [django-ckeditor](https://github.com/django-ckeditor/django-ckeditor) + +%package -n python3-django-mdeditor +Summary: A simple Django app to edit markdown text. +Provides: python-django-mdeditor +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-django-mdeditor +# django-mdeditor + + +[![ENV](https://img.shields.io/badge/release-v0.1.20-blue.svg)](https://github.com/pylixm/django-mdeditor) +[![ENV](https://img.shields.io/badge/中文-v0.1.20-blue.svg)](./README_CN.md) +[![ENV](https://img.shields.io/badge/Gitter-v0.1.20-blue.svg)](https://gitter.im/django-mdeditor/Lobby) +[![ENV](https://img.shields.io/badge/python-2.x/3.x-green.svg)](https://github.com/pylixm/django-mdeditor) +[![ENV](https://img.shields.io/badge/django-1.7+-green.svg)](https://github.com/pylixm/django-mdeditor) +[![LICENSE](https://img.shields.io/badge/license-GPL3.0-green.svg)](https://github.com/pylixm/django-mdeditor/master/LICENSE.txt) + +![](./django_and_editor.png) + +**Django-mdeditor** is Markdown Editor plugin application for [django](djangoproject.com) base on [Editor.md](https://github.com/pandao/editor.md). + +**Django-mdeditor** was inspired by great [django-ckeditor](https://github.com/django-ckeditor/django-ckeditor). + +**Note:** + +- For Markdown page rendering issues, backend rendering is recommended. Because `Editor.md` has not been updated for a long time, some bugs and compatibility issues need to be debugged. Of course, front-end students can choose. +- Regarding the `Jquery` conflict, it cannot be deleted because it is required by the admin backend. It is recommended to separate the editing page on a single page or a full screen directly, using its own static file to distinguish it from other pages. + +## Features + +- Almost Editor.md features + - Support Standard Markdown / CommonMark and GFM (GitHub Flavored Markdown); + - Full-featured: Real-time Preview, Image (cross-domain) upload, Preformatted text/Code blocks/Tables insert, Search replace, Themes, Multi-languages; + - Markdown Extras : Support ToC (Table of Contents), Emoji; + - Support TeX (LaTeX expressions, Based on KaTeX), Flowchart and Sequence Diagram of Markdown extended syntax; +- Can constom Editor.md toolbar +- The MDTextField field is provided for the model and can be displayed directly in the django admin. +- The MDTextFormField is provided for the Form and ModelForm. +- The MDEditorWidget is provided for the Admin custom widget. + + +## Quick start + +- Installation. +```bash + pipenv install django-mdeditor + # or + pip install django-mdeditor +``` + +- Add `mdeditor` to your INSTALLED_APPS setting like this: +```python + INSTALLED_APPS = [ + ... + 'mdeditor', + ] +``` + +- add frame settings for django3.0+ like this: + +```python +X_FRAME_OPTIONS = 'SAMEORIGIN' +``` + +- Add 'media' url to your settings like this: +```python +MEDIA_ROOT = os.path.join(BASE_DIR, 'uploads') +MEDIA_URL = '/media/' + +``` +Make folder `uploads/editor` in you project for media files. + +- Add url to your urls like this: +```python +from django.conf.urls import url, include +from django.conf.urls.static import static +from django.conf import settings +... + +urlpatterns = [ + ... + url(r'mdeditor/', include('mdeditor.urls')) +] + +if settings.DEBUG: + # static files (images, css, javascript, etc.) + urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) + +``` + +- Write your models like this: +```python +from django.db import models +from mdeditor.fields import MDTextField + +class ExampleModel(models.Model): + name = models.CharField(max_length=10) + content = MDTextField() +``` + +- Register your model in `admin.py` + +- Run `python manage.py makemigrations` and `python manage.py migrate` to create your models. + +- Login Admin ,you can see a markdown editor text field like this: + +![](/screenshot/admin-example.png) + + +## Usage + +### Edit fields in the model using Markdown + +Using Markdown to edit the fields in the model, we simply replace the `TextField` of the model with` MDTextField`. + +```python +from django.db import models +from mdeditor.fields import MDTextField + +class ExampleModel (models.Model): +    name = models.CharField (max_length = 10) +    content = MDTextField () +``` + +Admin in the background, will automatically display markdown edit rich text. + +Used in front-end template, you can use like this: +```python +{% load staticfiles %} + + +     +         + +     +     +         +            {% csrf_token %} + {{ form.media }} + {{ form.as_p }} +            

+         +     + + +``` + +### Edit fields in the Form using markdown + +Use markdown to edit fields in the Form, use `MDTextFormField` instead of` forms.CharField`, as follows: +```python +from mdeditor.fields import MDTextFormField + +class MDEditorForm (forms.Form): +    name = forms.CharField () +    content = MDTextFormField () +``` + +`ModelForm` can automatically convert the corresponding model field to the form field, which can be used normally: +```python +class MDEditorModleForm (forms.ModelForm): + +    class Meta: +        model = ExampleModel +        fields = '__all__' +``` + +### Use the markdown widget in admin + +Use the markdown widget in admin like as : +```python +from django.contrib import admin +from django.db import models + +# Register your models here. +from. import models as demo_models +from mdeditor.widgets import MDEditorWidget + + +class ExampleModelAdmin (admin.ModelAdmin): +    formfield_overrides = { +        models.TextField: {'widget': MDEditorWidget} +    } + + +admin.site.register (demo_models.ExampleModel, ExampleModelAdmin) +``` +### Customize the toolbar + +Add the following configuration to `settings`: +```python +MDEDITOR_CONFIGS = { + 'default':{ + 'width': '90% ', # Custom edit box width +     'height': 500, # Custom edit box height +     'toolbar': ["undo", "redo", "|", +                 "bold", "del", "italic", "quote", "ucwords", "uppercase", "lowercase", "|", +                 "h1", "h2", "h3", "h5", "h6", "|", +                 "list-ul", "list-ol", "hr", "|", +                 "link", "reference-link", "image", "code", "preformatted-text", "code-block", "table", "datetime", +                 "emoji", "html-entities", "pagebreak", "goto-line", "|", +                 "help", "info", +                 "||", "preview", "watch", "fullscreen"], # custom edit box toolbar +     'upload_image_formats': ["jpg", "jpeg", "gif", "png", "bmp", "webp"], # image upload format type +     'image_folder': 'editor', # image save the folder name +     'theme': 'default', # edit box theme, dark / default +     'preview_theme': 'default', # Preview area theme, dark / default +     'editor_theme': 'default', # edit area theme, pastel-on-dark / default +     'toolbar_autofixed': True, # Whether the toolbar capitals +     'search_replace': True, # Whether to open the search for replacement +     'emoji': True, # whether to open the expression function +     'tex': True, # whether to open the tex chart function +     'flow_chart': True, # whether to open the flow chart function +     'sequence': True, # Whether to open the sequence diagram function + 'watch': True, # Live preview + 'lineWrapping': False, # lineWrapping + 'lineNumbers': False, # lineNumbers + 'language': 'zh' # zh / en / es + } +     +} +``` + +## Feedback + +Welcome to use and feedback! + +You can create a [issue](https://github.com/pylixm/django-mdeditor/issues) or join in QQ Group. + +![](screenshot/QQ.png) + +## Reference + +- [django-ckeditor](https://github.com/django-ckeditor/django-ckeditor) + +%package help +Summary: Development documents and examples for django-mdeditor +Provides: python3-django-mdeditor-doc +%description help +# django-mdeditor + + +[![ENV](https://img.shields.io/badge/release-v0.1.20-blue.svg)](https://github.com/pylixm/django-mdeditor) +[![ENV](https://img.shields.io/badge/中文-v0.1.20-blue.svg)](./README_CN.md) +[![ENV](https://img.shields.io/badge/Gitter-v0.1.20-blue.svg)](https://gitter.im/django-mdeditor/Lobby) +[![ENV](https://img.shields.io/badge/python-2.x/3.x-green.svg)](https://github.com/pylixm/django-mdeditor) +[![ENV](https://img.shields.io/badge/django-1.7+-green.svg)](https://github.com/pylixm/django-mdeditor) +[![LICENSE](https://img.shields.io/badge/license-GPL3.0-green.svg)](https://github.com/pylixm/django-mdeditor/master/LICENSE.txt) + +![](./django_and_editor.png) + +**Django-mdeditor** is Markdown Editor plugin application for [django](djangoproject.com) base on [Editor.md](https://github.com/pandao/editor.md). + +**Django-mdeditor** was inspired by great [django-ckeditor](https://github.com/django-ckeditor/django-ckeditor). + +**Note:** + +- For Markdown page rendering issues, backend rendering is recommended. Because `Editor.md` has not been updated for a long time, some bugs and compatibility issues need to be debugged. Of course, front-end students can choose. +- Regarding the `Jquery` conflict, it cannot be deleted because it is required by the admin backend. It is recommended to separate the editing page on a single page or a full screen directly, using its own static file to distinguish it from other pages. + +## Features + +- Almost Editor.md features + - Support Standard Markdown / CommonMark and GFM (GitHub Flavored Markdown); + - Full-featured: Real-time Preview, Image (cross-domain) upload, Preformatted text/Code blocks/Tables insert, Search replace, Themes, Multi-languages; + - Markdown Extras : Support ToC (Table of Contents), Emoji; + - Support TeX (LaTeX expressions, Based on KaTeX), Flowchart and Sequence Diagram of Markdown extended syntax; +- Can constom Editor.md toolbar +- The MDTextField field is provided for the model and can be displayed directly in the django admin. +- The MDTextFormField is provided for the Form and ModelForm. +- The MDEditorWidget is provided for the Admin custom widget. + + +## Quick start + +- Installation. +```bash + pipenv install django-mdeditor + # or + pip install django-mdeditor +``` + +- Add `mdeditor` to your INSTALLED_APPS setting like this: +```python + INSTALLED_APPS = [ + ... + 'mdeditor', + ] +``` + +- add frame settings for django3.0+ like this: + +```python +X_FRAME_OPTIONS = 'SAMEORIGIN' +``` + +- Add 'media' url to your settings like this: +```python +MEDIA_ROOT = os.path.join(BASE_DIR, 'uploads') +MEDIA_URL = '/media/' + +``` +Make folder `uploads/editor` in you project for media files. + +- Add url to your urls like this: +```python +from django.conf.urls import url, include +from django.conf.urls.static import static +from django.conf import settings +... + +urlpatterns = [ + ... + url(r'mdeditor/', include('mdeditor.urls')) +] + +if settings.DEBUG: + # static files (images, css, javascript, etc.) + urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) + +``` + +- Write your models like this: +```python +from django.db import models +from mdeditor.fields import MDTextField + +class ExampleModel(models.Model): + name = models.CharField(max_length=10) + content = MDTextField() +``` + +- Register your model in `admin.py` + +- Run `python manage.py makemigrations` and `python manage.py migrate` to create your models. + +- Login Admin ,you can see a markdown editor text field like this: + +![](/screenshot/admin-example.png) + + +## Usage + +### Edit fields in the model using Markdown + +Using Markdown to edit the fields in the model, we simply replace the `TextField` of the model with` MDTextField`. + +```python +from django.db import models +from mdeditor.fields import MDTextField + +class ExampleModel (models.Model): +    name = models.CharField (max_length = 10) +    content = MDTextField () +``` + +Admin in the background, will automatically display markdown edit rich text. + +Used in front-end template, you can use like this: +```python +{% load staticfiles %} + + +     +         + +     +     +         +            {% csrf_token %} + {{ form.media }} + {{ form.as_p }} +            

+         +     + + +``` + +### Edit fields in the Form using markdown + +Use markdown to edit fields in the Form, use `MDTextFormField` instead of` forms.CharField`, as follows: +```python +from mdeditor.fields import MDTextFormField + +class MDEditorForm (forms.Form): +    name = forms.CharField () +    content = MDTextFormField () +``` + +`ModelForm` can automatically convert the corresponding model field to the form field, which can be used normally: +```python +class MDEditorModleForm (forms.ModelForm): + +    class Meta: +        model = ExampleModel +        fields = '__all__' +``` + +### Use the markdown widget in admin + +Use the markdown widget in admin like as : +```python +from django.contrib import admin +from django.db import models + +# Register your models here. +from. import models as demo_models +from mdeditor.widgets import MDEditorWidget + + +class ExampleModelAdmin (admin.ModelAdmin): +    formfield_overrides = { +        models.TextField: {'widget': MDEditorWidget} +    } + + +admin.site.register (demo_models.ExampleModel, ExampleModelAdmin) +``` +### Customize the toolbar + +Add the following configuration to `settings`: +```python +MDEDITOR_CONFIGS = { + 'default':{ + 'width': '90% ', # Custom edit box width +     'height': 500, # Custom edit box height +     'toolbar': ["undo", "redo", "|", +                 "bold", "del", "italic", "quote", "ucwords", "uppercase", "lowercase", "|", +                 "h1", "h2", "h3", "h5", "h6", "|", +                 "list-ul", "list-ol", "hr", "|", +                 "link", "reference-link", "image", "code", "preformatted-text", "code-block", "table", "datetime", +                 "emoji", "html-entities", "pagebreak", "goto-line", "|", +                 "help", "info", +                 "||", "preview", "watch", "fullscreen"], # custom edit box toolbar +     'upload_image_formats': ["jpg", "jpeg", "gif", "png", "bmp", "webp"], # image upload format type +     'image_folder': 'editor', # image save the folder name +     'theme': 'default', # edit box theme, dark / default +     'preview_theme': 'default', # Preview area theme, dark / default +     'editor_theme': 'default', # edit area theme, pastel-on-dark / default +     'toolbar_autofixed': True, # Whether the toolbar capitals +     'search_replace': True, # Whether to open the search for replacement +     'emoji': True, # whether to open the expression function +     'tex': True, # whether to open the tex chart function +     'flow_chart': True, # whether to open the flow chart function +     'sequence': True, # Whether to open the sequence diagram function + 'watch': True, # Live preview + 'lineWrapping': False, # lineWrapping + 'lineNumbers': False, # lineNumbers + 'language': 'zh' # zh / en / es + } +     +} +``` + +## Feedback + +Welcome to use and feedback! + +You can create a [issue](https://github.com/pylixm/django-mdeditor/issues) or join in QQ Group. + +![](screenshot/QQ.png) + +## Reference + +- [django-ckeditor](https://github.com/django-ckeditor/django-ckeditor) + +%prep +%autosetup -n django-mdeditor-0.1.20 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-django-mdeditor -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri May 05 2023 Python_Bot - 0.1.20-1 +- Package Spec generated -- cgit v1.2.3