diff --git a/.gitignore b/.gitignore index bae9d6b..c959b7b 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,4 @@ data/ui/shortcut_handlers .vscode/ *.glade~ dist/uberwriter-2.0b0-py3.7.egg +builddir/* diff --git a/MANIFEST.in b/MANIFEST.in deleted file mode 100644 index 9861c79..0000000 --- a/MANIFEST.in +++ /dev/null @@ -1 +0,0 @@ -recursive-include po * diff --git a/meson.build b/meson.build index 866cb50..4477c13 100644 --- a/meson.build +++ b/meson.build @@ -1,7 +1,6 @@ project( 'uberwriter', version: '2.2.0', - license: 'GPL2+', meson_version: '>= 0.50.0' ) diff --git a/screenshots/mockups_text2.svg b/screenshots/mockups_text2.svg new file mode 100644 index 0000000..a750f48 --- /dev/null +++ b/screenshots/mockups_text2.svg @@ -0,0 +1,1673 @@ + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PopUp Tabs + + + + + + + + + + + + + Foo + Bar + Baz + ActionActionActionActionAction + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Words: 37 + Characters: 4576 + + + UberWriter helps your textediting workflow + # + It's a simple markdown editor that offers a **lot** of features.Reasons to install:Because you love markdown as much as I doBecause you like writting in a clutter free environmentBecause you did not know that you only have always searched for an editor like this + ## 1.2.3. + + UberWriter.md - UberWriter + + + + + + + + + + + + + + + + + + + PopUp Tabs + + + + + + Save As ...ExportCopy HTMLPreferencesOpen TutorialPandoc HelpShortcutsAbout + + + + + + + + + + + + + + + + + + + + + + Open + + + + + + + + + + + + + + + + + + Save + New + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/setup.py b/setup.py index ded6cfc..8671284 100644 --- a/setup.py +++ b/setup.py @@ -60,10 +60,10 @@ setup( # "": '/opt/uberwriter/' }, packages=[ - "uberwriter_lib.gtkspellcheck", - "uberwriter_lib.pylocales", - # "uberwriter_lib.pressagio", - "uberwriter_lib", + "uberwriter.gtkspellcheck", + "uberwriter.pylocales", + # "uberwriter.pressagio", + "uberwriter", "uberwriter", "po" # "uberwriter.plugins" @@ -72,7 +72,7 @@ setup( include_package_data=True, package_data={ - 'uberwriter_lib.pylocales' : ['locales.db'], + 'uberwriter.pylocales' : ['locales.db'], }, data_files=[ (app_prefix + 'bin', ['bin/uberwriter']), diff --git a/uberwriter/.pylintrc b/uberwriter/.pylintrc index 2dc4fd2..8b0400e 100644 --- a/uberwriter/.pylintrc +++ b/uberwriter/.pylintrc @@ -60,7 +60,7 @@ confidence= # --enable=similarities". If you want to run only the classes checker, but have # no Warning level messages displayed, use "--disable=all --enable=classes # --disable=W". -# disable=print-statement, +disable=print-statement, parameter-unpacking, unpacking-in-except, old-raise-syntax, diff --git a/uberwriter/Texsymbols.json b/uberwriter/Texsymbols.json deleted file mode 100644 index e69de29..0000000 diff --git a/uberwriter/__init__.py b/uberwriter/__init__.py index 75623c9..f062c1e 100644 --- a/uberwriter/__init__.py +++ b/uberwriter/__init__.py @@ -25,15 +25,18 @@ import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk # pylint: disable=E0611 -from . import UberwriterWindow -from uberwriter_lib import AppWindow +from uberwriter import window +from uberwriter import application +from uberwriter.helpers import set_up_logging +from uberwriter.uberwriterconfig import get_version + def main(): 'constructor for your class instances' # (options, args) = parse_options() # Run the application. - app = AppWindow.Application() + app = application.Application() # ~ if args: # ~ for arg in args: diff --git a/uberwriter_lib/AppWindow.py b/uberwriter/application.py similarity index 94% rename from uberwriter_lib/AppWindow.py rename to uberwriter/application.py index f286761..5123b01 100644 --- a/uberwriter_lib/AppWindow.py +++ b/uberwriter/application.py @@ -16,16 +16,16 @@ from gettext import gettext as _ import gi -from uberwriter.Theme import Theme gi.require_version('Gtk', '3.0') # pylint: disable=wrong-import-position from gi.repository import GLib, Gio, Gtk, Gdk, GdkPixbuf -from uberwriter import UberwriterWindow -from uberwriter.Settings import Settings -from uberwriter_lib import set_up_logging -from uberwriter_lib.PreferencesDialog import PreferencesDialog -from . helpers import get_builder, get_media_path +from uberwriter import window +from uberwriter.theme import Theme +from uberwriter.settings import Settings +from uberwriter.helpers import set_up_logging +from uberwriter.preferences_dialog import PreferencesDialog +from uberwriter.helpers import get_builder, get_media_path class Application(Gtk.Application): @@ -168,7 +168,7 @@ class Application(Gtk.Application): # Windows are associated with the application # when the last one is closed the application shuts down # self.window = Window(application=self, title="UberWriter") - self.window = UberwriterWindow.UberwriterWindow(self) + self.window = window.Window(self) if self.args: self.window.load_file(self.args[0]) if self.options.experimental_features: @@ -181,7 +181,7 @@ class Application(Gtk.Application): parser = argparse.ArgumentParser() parser.add_argument( "-v", "--verbose", action="count", dest="verbose", - help=_("Show debug messages (-vv debugs uberwriter_lib also)")) + help=_("Show debug messages (-vv debugs uberwriter also)")) parser.add_argument( "-e", "--experimental-features", help=_("Use experimental features"), action='store_true' @@ -303,10 +303,10 @@ class Application(Gtk.Application): self.window.copy_html_to_clipboard() def on_preferences(self, _action, _value): - PreferencesWindow = PreferencesDialog() - PreferencesWindow.set_application(self) - PreferencesWindow.set_transient_for(self.window) - PreferencesWindow.show() + preferences_window = PreferencesDialog() + preferences_window.set_application(self) + preferences_window.set_transient_for(self.window) + preferences_window.show() def on_quit(self, _action, _param): self.quit() diff --git a/uberwriter/UberwriterAutoCorrect.py b/uberwriter/auto_correct.py similarity index 95% rename from uberwriter/UberwriterAutoCorrect.py rename to uberwriter/auto_correct.py index d11eaea..bdc54bb 100644 --- a/uberwriter/UberwriterAutoCorrect.py +++ b/uberwriter/auto_correct.py @@ -13,16 +13,16 @@ from gi.repository import Gtk, Gdk import enchant -from uberwriter_lib import pressagio -# import uberwriter_lib.pressagio.predictor -# import uberwriter_lib.pressagio.tokenizer -# import uberwriter_lib.pressagio.dbconnector -# import uberwriter_lib.pressagio.context_tracker -# import uberwriter_lib.pressagio.callback +from uberwriter import pressagio +# import uberwriter.pressagio.predictor +# import uberwriter.pressagio.tokenizer +# import uberwriter.pressagio.dbconnector +# import uberwriter.pressagio.context_tracker +# import uberwriter.pressagio.callback # from Levenshtein import distance -from uberwriter_lib.helpers import get_media_path +from uberwriter.helpers import get_media_path # Define and create PresageCallback object class PressagioCallback(pressagio.callback.Callback): @@ -36,7 +36,7 @@ class PressagioCallback(pressagio.callback.Callback): def future_stream(self): return '' -class UberwriterAutoCorrect: +class AutoCorrect: def show_bubble(self, iterator, suggestion): self.suggestion = suggestion diff --git a/uberwriter_lib/Builder.py b/uberwriter/builder.py similarity index 99% rename from uberwriter_lib/Builder.py rename to uberwriter/builder.py index 123acd3..ec934aa 100644 --- a/uberwriter_lib/Builder.py +++ b/uberwriter/builder.py @@ -28,7 +28,7 @@ import gi gi.require_version('Gtk', '3.0') # pylint: disable=wrong-import-position from gi.repository import GObject, Gtk # pylint: disable=E0611 -LOGGER = logging.getLogger('uberwriter_lib') +LOGGER = logging.getLogger('uberwriter') # this module is big so uses some conventional prefixes and postfixes # *s list, except self.widgets is a dictionary diff --git a/uberwriter/UberwriterExportDialog.py b/uberwriter/export_dialog.py similarity index 98% rename from uberwriter/UberwriterExportDialog.py rename to uberwriter/export_dialog.py index 167329a..7a2362f 100644 --- a/uberwriter/UberwriterExportDialog.py +++ b/uberwriter/export_dialog.py @@ -25,13 +25,13 @@ import logging from gettext import gettext as _ import gi -from uberwriter.Theme import Theme gi.require_version('Gtk', '3.0') from gi.repository import Gtk -from uberwriter_lib import helpers -from uberwriter_lib.helpers import get_builder +from uberwriter import helpers +from uberwriter.theme import Theme +from uberwriter.helpers import get_builder LOGGER = logging.getLogger('uberwriter') @@ -40,7 +40,7 @@ class Export: Manages all the export operations and dialogs """ - __gtype_name__ = "UberwriterExportDialog" + __gtype_name__ = "export_dialog" def __init__(self, filename): """Set up the about dialog""" diff --git a/uberwriter/FixTable.py b/uberwriter/fix_table.py similarity index 100% rename from uberwriter/FixTable.py rename to uberwriter/fix_table.py diff --git a/uberwriter/FormatShortcuts.py b/uberwriter/format_shortcuts.py similarity index 99% rename from uberwriter/FormatShortcuts.py rename to uberwriter/format_shortcuts.py index ade4e01..0d0b030 100644 --- a/uberwriter/FormatShortcuts.py +++ b/uberwriter/format_shortcuts.py @@ -17,7 +17,7 @@ from gettext import gettext as _ -from . MarkupBuffer import MarkupBuffer +from uberwriter.markup_buffer import MarkupBuffer class FormatShortcuts(): diff --git a/uberwriter_lib/gtkspellcheck/__init__.py b/uberwriter/gtkspellcheck/__init__.py similarity index 100% rename from uberwriter_lib/gtkspellcheck/__init__.py rename to uberwriter/gtkspellcheck/__init__.py diff --git a/uberwriter_lib/gtkspellcheck/oxt_extract.py b/uberwriter/gtkspellcheck/oxt_extract.py similarity index 100% rename from uberwriter_lib/gtkspellcheck/oxt_extract.py rename to uberwriter/gtkspellcheck/oxt_extract.py diff --git a/uberwriter_lib/gtkspellcheck/spellcheck.py b/uberwriter/gtkspellcheck/spellcheck.py similarity index 99% rename from uberwriter_lib/gtkspellcheck/spellcheck.py rename to uberwriter/gtkspellcheck/spellcheck.py index 4a296a6..0112fbf 100644 --- a/uberwriter_lib/gtkspellcheck/spellcheck.py +++ b/uberwriter/gtkspellcheck/spellcheck.py @@ -29,8 +29,8 @@ import logging import re import sys -from uberwriter_lib.pylocales import code_to_name as _code_to_name -from uberwriter_lib.pylocales import LanguageNotFound, CountryNotFound +from uberwriter.pylocales import code_to_name as _code_to_name +from uberwriter.pylocales import LanguageNotFound, CountryNotFound # public objects __all__ = ['SpellChecker', 'NoDictionariesFound', 'NoGtkBindingFound'] diff --git a/uberwriter/headerbars.py b/uberwriter/headerbars.py index 1ae1573..e70b04e 100644 --- a/uberwriter/headerbars.py +++ b/uberwriter/headerbars.py @@ -22,10 +22,10 @@ from gettext import gettext as _ import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk -from uberwriter_lib.helpers import get_builder -from uberwriter_lib.helpers import get_descendant +from uberwriter.helpers import get_builder +from uberwriter.helpers import get_descendant -from uberwriter_lib.AppWindow import Application as app +from uberwriter.application import Application as app class MainHeaderbar: #pylint: disable=too-few-public-methods """Sets up the main application headerbar diff --git a/uberwriter_lib/helpers.py b/uberwriter/helpers.py similarity index 97% rename from uberwriter_lib/helpers.py rename to uberwriter/helpers.py index ec682ee..efd0ef5 100644 --- a/uberwriter_lib/helpers.py +++ b/uberwriter/helpers.py @@ -26,8 +26,8 @@ import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk # pylint: disable=E0611 -from . uberwriterconfig import get_data_file -from . Builder import Builder +from uberwriter.uberwriterconfig import get_data_file +from uberwriter.builder import Builder def get_builder(builder_file_name): @@ -103,7 +103,7 @@ def set_up_logging(opts): logger_sh.setFormatter(formatter) logger.addHandler(logger_sh) - lib_logger = logging.getLogger('uberwriter_lib') + lib_logger = logging.getLogger('uberwriter') lib_logger_sh = logging.StreamHandler() lib_logger_sh.setFormatter(formatter) lib_logger.addHandler(lib_logger_sh) diff --git a/uberwriter/UberwriterInlinePreview.py b/uberwriter/inline_preview.py similarity index 98% rename from uberwriter/UberwriterInlinePreview.py rename to uberwriter/inline_preview.py index 3ec7afd..6396411 100644 --- a/uberwriter/UberwriterInlinePreview.py +++ b/uberwriter/inline_preview.py @@ -29,12 +29,12 @@ from gettext import gettext as _ import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk, Gdk, GdkPixbuf, GObject -from uberwriter_lib import LatexToPNG -from .Settings import Settings +from uberwriter import latex_to_PNG +from uberwriter.settings import Settings -from .FixTable import FixTable +from uberwriter.fix_table import FixTable -from .MarkupBuffer import MarkupBuffer +from uberwriter.markup_buffer import MarkupBuffer LOGGER = logging.getLogger('uberwriter') @@ -264,12 +264,12 @@ def fill_lexikon_bubble(vocab, lexikon_dict): return None -class UberwriterInlinePreview(): +class InlinePreview(): def __init__(self, view, text_buffer): self.text_view = view self.text_buffer = text_buffer - self.latex_converter = LatexToPNG.LatexToPNG() + self.latex_converter = latex_to_PNG.LatexToPNG() cursor_mark = self.text_buffer.get_insert() cursor_iter = self.text_buffer.get_iter_at_mark(cursor_mark) self.click_mark = self.text_buffer.create_mark('click', cursor_iter) diff --git a/uberwriter_lib/LatexToPNG.py b/uberwriter/latex_to_PNG.py similarity index 100% rename from uberwriter_lib/LatexToPNG.py rename to uberwriter/latex_to_PNG.py diff --git a/uberwriter/MarkupBuffer.py b/uberwriter/markup_buffer.py similarity index 100% rename from uberwriter/MarkupBuffer.py rename to uberwriter/markup_buffer.py diff --git a/uberwriter_lib/PreferencesDialog.py b/uberwriter/preferences_dialog.py similarity index 92% rename from uberwriter_lib/PreferencesDialog.py rename to uberwriter/preferences_dialog.py index bf07c0d..937dcf4 100644 --- a/uberwriter_lib/PreferencesDialog.py +++ b/uberwriter/preferences_dialog.py @@ -22,9 +22,9 @@ import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk # pylint: disable=E0611 import logging -logger = logging.getLogger('uberwriter_lib') +logger = logging.getLogger('uberwriter') -from . helpers import get_builder, show_uri, get_help_uri +from uberwriter.helpers import get_builder, show_uri, get_help_uri class PreferencesDialog(Gtk.Window): __gtype_name__ = "PreferencesDialog" diff --git a/uberwriter_lib/pressagio/VERSION b/uberwriter/pressagio/VERSION similarity index 100% rename from uberwriter_lib/pressagio/VERSION rename to uberwriter/pressagio/VERSION diff --git a/uberwriter_lib/pressagio/__init__.py b/uberwriter/pressagio/__init__.py similarity index 100% rename from uberwriter_lib/pressagio/__init__.py rename to uberwriter/pressagio/__init__.py diff --git a/uberwriter_lib/pressagio/callback.py b/uberwriter/pressagio/callback.py similarity index 100% rename from uberwriter_lib/pressagio/callback.py rename to uberwriter/pressagio/callback.py diff --git a/uberwriter_lib/pressagio/character.py b/uberwriter/pressagio/character.py similarity index 100% rename from uberwriter_lib/pressagio/character.py rename to uberwriter/pressagio/character.py diff --git a/uberwriter_lib/pressagio/combiner.py b/uberwriter/pressagio/combiner.py similarity index 100% rename from uberwriter_lib/pressagio/combiner.py rename to uberwriter/pressagio/combiner.py diff --git a/uberwriter_lib/pressagio/context_tracker.py b/uberwriter/pressagio/context_tracker.py similarity index 100% rename from uberwriter_lib/pressagio/context_tracker.py rename to uberwriter/pressagio/context_tracker.py diff --git a/uberwriter_lib/pressagio/dbconnector.py b/uberwriter/pressagio/dbconnector.py similarity index 100% rename from uberwriter_lib/pressagio/dbconnector.py rename to uberwriter/pressagio/dbconnector.py diff --git a/uberwriter_lib/pressagio/observer.py b/uberwriter/pressagio/observer.py similarity index 100% rename from uberwriter_lib/pressagio/observer.py rename to uberwriter/pressagio/observer.py diff --git a/uberwriter_lib/pressagio/predictor.py b/uberwriter/pressagio/predictor.py similarity index 100% rename from uberwriter_lib/pressagio/predictor.py rename to uberwriter/pressagio/predictor.py diff --git a/uberwriter_lib/pressagio/tests/__init__.py b/uberwriter/pressagio/tests/__init__.py similarity index 100% rename from uberwriter_lib/pressagio/tests/__init__.py rename to uberwriter/pressagio/tests/__init__.py diff --git a/uberwriter_lib/pressagio/tests/test_character.py b/uberwriter/pressagio/tests/test_character.py similarity index 100% rename from uberwriter_lib/pressagio/tests/test_character.py rename to uberwriter/pressagio/tests/test_character.py diff --git a/uberwriter_lib/pressagio/tests/test_combiner.py b/uberwriter/pressagio/tests/test_combiner.py similarity index 100% rename from uberwriter_lib/pressagio/tests/test_combiner.py rename to uberwriter/pressagio/tests/test_combiner.py diff --git a/uberwriter_lib/pressagio/tests/test_data/der_linksdenker.txt b/uberwriter/pressagio/tests/test_data/der_linksdenker.txt similarity index 100% rename from uberwriter_lib/pressagio/tests/test_data/der_linksdenker.txt rename to uberwriter/pressagio/tests/test_data/der_linksdenker.txt diff --git a/uberwriter_lib/pressagio/tests/test_data/profile_smoothedngram.ini b/uberwriter/pressagio/tests/test_data/profile_smoothedngram.ini similarity index 100% rename from uberwriter_lib/pressagio/tests/test_data/profile_smoothedngram.ini rename to uberwriter/pressagio/tests/test_data/profile_smoothedngram.ini diff --git a/uberwriter_lib/pressagio/tests/test_dbconnector.py b/uberwriter/pressagio/tests/test_dbconnector.py similarity index 100% rename from uberwriter_lib/pressagio/tests/test_dbconnector.py rename to uberwriter/pressagio/tests/test_dbconnector.py diff --git a/uberwriter_lib/pressagio/tests/test_predictor.py b/uberwriter/pressagio/tests/test_predictor.py similarity index 100% rename from uberwriter_lib/pressagio/tests/test_predictor.py rename to uberwriter/pressagio/tests/test_predictor.py diff --git a/uberwriter_lib/pressagio/tests/test_tokenizer.py b/uberwriter/pressagio/tests/test_tokenizer.py similarity index 100% rename from uberwriter_lib/pressagio/tests/test_tokenizer.py rename to uberwriter/pressagio/tests/test_tokenizer.py diff --git a/uberwriter_lib/pressagio/tokenizer.py b/uberwriter/pressagio/tokenizer.py similarity index 100% rename from uberwriter_lib/pressagio/tokenizer.py rename to uberwriter/pressagio/tokenizer.py diff --git a/uberwriter_lib/pylocales/__init__.py b/uberwriter/pylocales/__init__.py similarity index 100% rename from uberwriter_lib/pylocales/__init__.py rename to uberwriter/pylocales/__init__.py diff --git a/uberwriter_lib/pylocales/locales.db b/uberwriter/pylocales/locales.db similarity index 100% rename from uberwriter_lib/pylocales/locales.db rename to uberwriter/pylocales/locales.db diff --git a/uberwriter_lib/pylocales/locales.py b/uberwriter/pylocales/locales.py similarity index 100% rename from uberwriter_lib/pylocales/locales.py rename to uberwriter/pylocales/locales.py diff --git a/uberwriter/UberwriterSearchAndReplace.py b/uberwriter/search_and_replace.py similarity index 99% rename from uberwriter/UberwriterSearchAndReplace.py rename to uberwriter/search_and_replace.py index b0015c6..63c40a0 100644 --- a/uberwriter/UberwriterSearchAndReplace.py +++ b/uberwriter/search_and_replace.py @@ -23,7 +23,7 @@ from gi.repository import Gtk, Gdk LOGGER = logging.getLogger('uberwriter') -class UberwriterSearchAndReplace(): +class SearchAndReplace(): """ Adds (regex) search and replace functionality to uberwriter diff --git a/uberwriter/Settings.py b/uberwriter/settings.py similarity index 100% rename from uberwriter/Settings.py rename to uberwriter/settings.py diff --git a/uberwriter/UberwriterSidebar.py b/uberwriter/sidebar.py similarity index 99% rename from uberwriter/UberwriterSidebar.py rename to uberwriter/sidebar.py index 6b8d300..ddc8536 100644 --- a/uberwriter/UberwriterSidebar.py +++ b/uberwriter/sidebar.py @@ -53,7 +53,7 @@ class Shelve(): store.append(node[root], [filename, root + "/" + filename]) -class UberwriterSidebar(): +class Sidebar(): """ Presentational class for shelves and files managed by the "sidebar" diff --git a/uberwriter_lib/tables.py b/uberwriter/tables.py similarity index 100% rename from uberwriter_lib/tables.py rename to uberwriter/tables.py diff --git a/uberwriter/UberwriterTextEditor.py b/uberwriter/text_editor.py similarity index 99% rename from uberwriter/UberwriterTextEditor.py rename to uberwriter/text_editor.py index 63673d4..a94a1b2 100644 --- a/uberwriter/UberwriterTextEditor.py +++ b/uberwriter/text_editor.py @@ -48,7 +48,7 @@ A TextEditor is Gtk.TextView import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk, Gdk, GObject -from .FormatShortcuts import FormatShortcuts +from uberwriter.format_shortcuts import FormatShortcuts import logging LOGGER = logging.getLogger('uberwriter') diff --git a/uberwriter/Theme.py b/uberwriter/theme.py similarity index 96% rename from uberwriter/Theme.py rename to uberwriter/theme.py index cd408bc..e43ec57 100644 --- a/uberwriter/Theme.py +++ b/uberwriter/theme.py @@ -1,7 +1,7 @@ from gi.repository import Gtk -from uberwriter.Settings import Settings -from uberwriter_lib.helpers import get_css_path +from uberwriter.settings import Settings +from uberwriter.helpers import get_css_path class Theme: diff --git a/uberwriter_lib/uberwriterconfig.py b/uberwriter/uberwriterconfig.py similarity index 97% rename from uberwriter_lib/uberwriterconfig.py rename to uberwriter/uberwriterconfig.py index 8765909..fc3f7b1 100644 --- a/uberwriter_lib/uberwriterconfig.py +++ b/uberwriter/uberwriterconfig.py @@ -47,7 +47,7 @@ def get_data_file(*path_segments): def get_data_path(): """Retrieve uberwriter data path - This path is by default /../data/ in trunk + This path is by default /../data/ in trunk and /opt/uberwriter/data in an installed version but this path is specified at installation time. """ diff --git a/uberwriter_lib/webkit2png/webkit2png.py b/uberwriter/webkit2png/webkit2png.py similarity index 100% rename from uberwriter_lib/webkit2png/webkit2png.py rename to uberwriter/webkit2png/webkit2png.py diff --git a/uberwriter/UberwriterWindow.py b/uberwriter/window.py similarity index 97% rename from uberwriter/UberwriterWindow.py rename to uberwriter/window.py index 188e857..ba784c7 100644 --- a/uberwriter/UberwriterWindow.py +++ b/uberwriter/window.py @@ -28,7 +28,6 @@ from gettext import gettext as _ import gi from gi.repository.GObject import param_spec_string -from uberwriter.Theme import Theme gi.require_version('Gtk', '3.0') gi.require_version('WebKit2', '4.0') # pylint: disable=wrong-import-position @@ -39,20 +38,21 @@ from gi.repository import Pango # pylint: disable=E0611 import cairo # import cairo.Pattern, cairo.SolidPattern -from . import headerbars -from uberwriter_lib import helpers -from uberwriter_lib.helpers import get_builder -from uberwriter_lib.gtkspellcheck import SpellChecker +from uberwriter import headerbars +from uberwriter import helpers +from uberwriter.theme import Theme +from uberwriter.helpers import get_builder +from uberwriter.gtkspellcheck import SpellChecker -from .MarkupBuffer import MarkupBuffer -from .UberwriterTextEditor import TextEditor -from .UberwriterInlinePreview import UberwriterInlinePreview -from .UberwriterSidebar import UberwriterSidebar -from .UberwriterSearchAndReplace import UberwriterSearchAndReplace -from .Settings import Settings -# from .UberwriterAutoCorrect import UberwriterAutoCorrect +from uberwriter.markup_buffer import MarkupBuffer +from uberwriter.text_editor import TextEditor +from uberwriter.inline_preview import InlinePreview +from uberwriter.sidebar import Sidebar +from uberwriter.search_and_replace import SearchAndReplace +from uberwriter.settings import Settings +# from .auto_correct import AutoCorrect -from .UberwriterExportDialog import Export +from uberwriter.export_dialog import Export # from .plugins.bibtex import BibTex # Some Globals # TODO move them somewhere for better @@ -65,7 +65,7 @@ CONFIG_PATH = os.path.expanduser("~/.config/uberwriter/") # See texteditor_lib.Window.py for more details about how this class works -class UberwriterWindow(Gtk.ApplicationWindow): +class Window(Gtk.ApplicationWindow): WORDCOUNT = re.compile(r"(?!\-\w)[\s#*\+\-]+", re.UNICODE) @@ -219,7 +219,7 @@ class UberwriterWindow(Gtk.ApplicationWindow): # Events for Typewriter mode # Setting up inline preview - self.inline_preview = UberwriterInlinePreview( + self.inline_preview = InlinePreview( self.text_editor, self.text_buffer) # Vertical scrolling @@ -236,14 +236,14 @@ class UberwriterWindow(Gtk.ApplicationWindow): ### self.paned_window = self.builder.get_object("main_pained") self.sidebar_box = self.builder.get_object("sidebar_box") - self.sidebar = UberwriterSidebar(self) + self.sidebar = Sidebar(self) self.sidebar_box.hide() ### # Search and replace initialization # Same interface as Sidebar ;) ### - self.searchreplace = UberwriterSearchAndReplace(self) + self.searchreplace = SearchAndReplace(self) # Window resize self.window_resize(self) @@ -1069,7 +1069,7 @@ class UberwriterWindow(Gtk.ApplicationWindow): """ pass # try: - # self.auto_correct = UberwriterAutoCorrect( + # self.auto_correct = AutoCorrect( # self.text_editor, self.text_buffer) # except: # LOGGER.debug("Couldn't install autocorrect.") diff --git a/uberwriter_lib/.pylintrc b/uberwriter_lib/.pylintrc deleted file mode 100644 index 2dc4fd2..0000000 --- a/uberwriter_lib/.pylintrc +++ /dev/null @@ -1,568 +0,0 @@ -[MASTER] - -# A comma-separated list of package or module names from where C extensions may -# be loaded. Extensions are loading into the active Python interpreter and may -# run arbitrary code. -extension-pkg-whitelist= - -# Add files or directories to the blacklist. They should be base names, not -# paths. -ignore=CVS - -# Add files or directories matching the regex patterns to the blacklist. The -# regex matches against base names, not paths. -ignore-patterns= - -# Python code to execute, usually for sys.path manipulation such as -# pygtk.require(). -#init-hook= - -# Use multiple processes to speed up Pylint. Specifying 0 will auto-detect the -# number of processors available to use. -jobs=1 - -# Control the amount of potential inferred values when inferring a single -# object. This can help the performance when dealing with large functions or -# complex, nested conditions. -limit-inference-results=100 - -# List of plugins (as comma separated values of python modules names) to load, -# usually to register additional checkers. -load-plugins= - -# Pickle collected data for later comparisons. -persistent=yes - -# Specify a configuration file. -#rcfile= - -# When enabled, pylint would attempt to guess common misconfiguration and emit -# user-friendly hints instead of false-positive error messages. -suggestion-mode=yes - -# Allow loading of arbitrary C extensions. Extensions are imported into the -# active Python interpreter and may run arbitrary code. -unsafe-load-any-extension=no - - -[MESSAGES CONTROL] - -# Only show warnings with the listed confidence levels. Leave empty to show -# all. Valid levels: HIGH, INFERENCE, INFERENCE_FAILURE, UNDEFINED. -confidence= - -# Disable the message, report, category or checker with the given id(s). You -# can either give multiple identifiers separated by comma (,) or put this -# option multiple times (only on the command line, not in the configuration -# file where it should appear only once). You can also use "--disable=all" to -# disable everything first and then reenable specific checks. For example, if -# you want to run only the similarities checker, you can use "--disable=all -# --enable=similarities". If you want to run only the classes checker, but have -# no Warning level messages displayed, use "--disable=all --enable=classes -# --disable=W". -# disable=print-statement, - parameter-unpacking, - unpacking-in-except, - old-raise-syntax, - backtick, - long-suffix, - old-ne-operator, - old-octal-literal, - import-star-module-level, - non-ascii-bytes-literal, - raw-checker-failed, - bad-inline-option, - locally-disabled, - locally-enabled, - file-ignored, - suppressed-message, - useless-suppression, - deprecated-pragma, - use-symbolic-message-instead, - apply-builtin, - basestring-builtin, - buffer-builtin, - cmp-builtin, - coerce-builtin, - execfile-builtin, - file-builtin, - long-builtin, - raw_input-builtin, - reduce-builtin, - standarderror-builtin, - unicode-builtin, - xrange-builtin, - coerce-method, - delslice-method, - getslice-method, - setslice-method, - no-absolute-import, - old-division, - dict-iter-method, - dict-view-method, - next-method-called, - metaclass-assignment, - indexing-exception, - raising-string, - reload-builtin, - oct-method, - hex-method, - nonzero-method, - cmp-method, - input-builtin, - round-builtin, - intern-builtin, - unichr-builtin, - map-builtin-not-iterating, - zip-builtin-not-iterating, - range-builtin-not-iterating, - filter-builtin-not-iterating, - using-cmp-argument, - eq-without-hash, - div-method, - idiv-method, - rdiv-method, - exception-message-attribute, - invalid-str-codec, - sys-max-int, - bad-python3-import, - deprecated-string-function, - deprecated-str-translate-call, - deprecated-itertools-function, - deprecated-types-field, - next-method-defined, - dict-items-not-iterating, - dict-keys-not-iterating, - dict-values-not-iterating, - deprecated-operator-function, - deprecated-urllib-function, - xreadlines-attribute, - deprecated-sys-function, - exception-escape, - comprehension-escape - -# Enable the message, report, category or checker with the given id(s). You can -# either give multiple identifier separated by comma (,) or put this option -# multiple time (only on the command line, not in the configuration file where -# it should appear only once). See also the "--disable" option for examples. -enable=c-extension-no-member - - -[REPORTS] - -# Python expression which should return a note less than 10 (10 is the highest -# note). You have access to the variables errors warning, statement which -# respectively contain the number of errors / warnings messages and the total -# number of statements analyzed. This is used by the global evaluation report -# (RP0004). -evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10) - -# Template used to display messages. This is a python new-style format string -# used to format the message information. See doc for all details. -#msg-template= - -# Set the output format. Available formats are text, parseable, colorized, json -# and msvs (visual studio). You can also give a reporter class, e.g. -# mypackage.mymodule.MyReporterClass. -output-format=msvs - -# Tells whether to display a full report or only the messages. -reports=yes - -# Activate the evaluation score. -score=yes - - -[REFACTORING] - -# Maximum number of nested blocks for function / method body -max-nested-blocks=5 - -# Complete name of functions that never returns. When checking for -# inconsistent-return-statements if a never returning function is called then -# it will be considered as an explicit return statement and no message will be -# printed. -never-returning-functions=sys.exit - - -[FORMAT] - -# Expected format of line ending, e.g. empty (any line ending), LF or CRLF. -expected-line-ending-format= - -# Regexp for a line that is allowed to be longer than the limit. -ignore-long-lines=^\s*(# )??$ - -# Number of spaces of indent required inside a hanging or continued line. -indent-after-paren=4 - -# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1 -# tab). -indent-string=' ' - -# Maximum number of characters on a single line. -max-line-length=100 - -# Maximum number of lines in a module. -max-module-lines=1000 - -# List of optional constructs for which whitespace checking is disabled. `dict- -# separator` is used to allow tabulation in dicts, etc.: {1 : 1,\n222: 2}. -# `trailing-comma` allows a space between comma and closing bracket: (a, ). -# `empty-line` allows space-only lines. -no-space-check=trailing-comma, - dict-separator - -# Allow the body of a class to be on the same line as the declaration if body -# contains single statement. -single-line-class-stmt=no - -# Allow the body of an if to be on the same line as the test if there is no -# else. -single-line-if-stmt=no - - -[LOGGING] - -# Logging modules to check that the string format arguments are in logging -# function parameter format. -logging-modules=logging - - -[SPELLING] - -# Limits count of emitted suggestions for spelling mistakes. -max-spelling-suggestions=4 - -# Spelling dictionary name. Available dictionaries: he (hspell), en_IE -# (hunspell), es_BO (hunspell), en_NZ (hunspell), es_DO (hunspell), es_MX -# (hunspell), en_ZA (hunspell), en_IN (hunspell), en_TT (hunspell), ca -# (aspell), ca_FR (hunspell), es_HN (hunspell), ca_AD (hunspell), es_SV -# (hunspell), es_PA (hunspell), en_DK (hunspell), es_NI (hunspell), es_PE -# (hunspell), en_SG (hunspell), es_UY (hunspell), en_BS (hunspell), en_BW -# (hunspell), es_CL (hunspell), es_AR (hunspell), en_BZ (hunspell), es_CO -# (hunspell), en_ZW (hunspell), en_HK (hunspell), es_CR (hunspell), en_NA -# (hunspell), es_PR (hunspell), en_JM (hunspell), es_VE (hunspell), en_AG -# (hunspell), es_CU (hunspell), en_NG (hunspell), ca_ES (hunspell), es_ES -# (hunspell), es_ANY (hunspell), es_EC (hunspell), es_GT (hunspell), en_PH -# (hunspell), en_GB (hunspell), en_US (hunspell), ca_IT (hunspell), es_PY -# (hunspell), en_GH (hunspell).. -spelling-dict= - -# List of comma separated words that should not be checked. -spelling-ignore-words= - -# A path to a file that contains private dictionary; one word per line. -spelling-private-dict-file= - -# Tells whether to store unknown words to indicated private dictionary in -# --spelling-private-dict-file option instead of raising a message. -spelling-store-unknown-words=no - - -[SIMILARITIES] - -# Ignore comments when computing similarities. -ignore-comments=yes - -# Ignore docstrings when computing similarities. -ignore-docstrings=yes - -# Ignore imports when computing similarities. -ignore-imports=no - -# Minimum lines number of a similarity. -min-similarity-lines=4 - - -[TYPECHECK] - -# List of decorators that produce context managers, such as -# contextlib.contextmanager. Add to this list to register other decorators that -# produce valid context managers. -contextmanager-decorators=contextlib.contextmanager - -# List of members which are set dynamically and missed by pylint inference -# system, and so shouldn't trigger E1101 when accessed. Python regular -# expressions are accepted. -generated-members= - -# Tells whether missing members accessed in mixin class should be ignored. A -# mixin class is detected if its name ends with "mixin" (case insensitive). -ignore-mixin-members=yes - -# Tells whether to warn about missing members when the owner of the attribute -# is inferred to be None. -ignore-none=yes - -# This flag controls whether pylint should warn about no-member and similar -# checks whenever an opaque object is returned when inferring. The inference -# can return multiple potential results while evaluating a Python object, but -# some branches might not be evaluated, which results in partial inference. In -# that case, it might be useful to still emit no-member and other checks for -# the rest of the inferred objects. -ignore-on-opaque-inference=yes - -# List of class names for which member attributes should not be checked (useful -# for classes with dynamically set attributes). This supports the use of -# qualified names. -ignored-classes=optparse.Values,thread._local,_thread._local - -# List of module names for which member attributes should not be checked -# (useful for modules/projects where namespaces are manipulated during runtime -# and thus existing member attributes cannot be deduced by static analysis. It -# supports qualified module names, as well as Unix pattern matching. -ignored-modules= - -# Show a hint with possible names when a member name was not found. The aspect -# of finding the hint is based on edit distance. -missing-member-hint=yes - -# The minimum edit distance a name should have in order to be considered a -# similar match for a missing member name. -missing-member-hint-distance=1 - -# The total number of similar names that should be taken in consideration when -# showing a hint for a missing member. -missing-member-max-choices=1 - - -[BASIC] - -# Naming style matching correct argument names. -argument-naming-style=snake_case - -# Regular expression matching correct argument names. Overrides argument- -# naming-style. -#argument-rgx= - -# Naming style matching correct attribute names. -attr-naming-style=snake_case - -# Regular expression matching correct attribute names. Overrides attr-naming- -# style. -#attr-rgx= - -# Bad variable names which should always be refused, separated by a comma. -bad-names=foo, - bar, - baz, - toto, - tutu, - tata - -# Naming style matching correct class attribute names. -class-attribute-naming-style=any - -# Regular expression matching correct class attribute names. Overrides class- -# attribute-naming-style. -#class-attribute-rgx= - -# Naming style matching correct class names. -class-naming-style=PascalCase - -# Regular expression matching correct class names. Overrides class-naming- -# style. -#class-rgx= - -# Naming style matching correct constant names. -const-naming-style=UPPER_CASE - -# Regular expression matching correct constant names. Overrides const-naming- -# style. -#const-rgx= - -# Minimum line length for functions/classes that require docstrings, shorter -# ones are exempt. -docstring-min-length=-1 - -# Naming style matching correct function names. -function-naming-style=snake_case - -# Regular expression matching correct function names. Overrides function- -# naming-style. -#function-rgx= - -# Good variable names which should always be accepted, separated by a comma. -good-names=i, - j, - k, - ex, - Run, - _ - -# Include a hint for the correct naming format with invalid-name. -include-naming-hint=yes - -# Naming style matching correct inline iteration names. -inlinevar-naming-style=any - -# Regular expression matching correct inline iteration names. Overrides -# inlinevar-naming-style. -#inlinevar-rgx= - -# Naming style matching correct method names. -method-naming-style=snake_case - -# Regular expression matching correct method names. Overrides method-naming- -# style. -#method-rgx= - -# Naming style matching correct module names. -module-naming-style=snake_case - -# Regular expression matching correct module names. Overrides module-naming- -# style. -#module-rgx= - -# Colon-delimited sets of names that determine each other's naming style when -# the name regexes allow several styles. -name-group= - -# Regular expression which should only match function or class names that do -# not require a docstring. -no-docstring-rgx=^_ - -# List of decorators that produce properties, such as abc.abstractproperty. Add -# to this list to register other decorators that produce valid properties. -property-classes=abc.abstractproperty - -# Naming style matching correct variable names. -variable-naming-style=snake_case - -# Regular expression matching correct variable names. Overrides variable- -# naming-style. -#variable-rgx= - - -[VARIABLES] - -# List of additional names supposed to be defined in builtins. Remember that -# you should avoid to define new builtins when possible. -additional-builtins= - -# Tells whether unused global variables should be treated as a violation. -allow-global-unused-variables=yes - -# List of strings which can identify a callback function by name. A callback -# name must start or end with one of those strings. -callbacks=cb_, - _cb - -# A regular expression matching the name of dummy variables (i.e. expected to -# not be used). -dummy-variables-rgx=_+$|(_[a-zA-Z0-9_]*[a-zA-Z0-9]+?$)|dummy|^ignored_|^unused_ - -# Argument names that match this expression will be ignored. Default to name -# with leading underscore. -ignored-argument-names=_.*|^ignored_|^unused_ - -# Tells whether we should check for unused import in __init__ files. -init-import=no - -# List of qualified module names which can have objects that can redefine -# builtins. -redefining-builtins-modules=six.moves,past.builtins,future.builtins,builtins,io - - -[MISCELLANEOUS] - -# List of note tags to take in consideration, separated by a comma. -notes=FIXME, - XXX, - TODO - - -[CLASSES] - -# List of method names used to declare (i.e. assign) instance attributes. -defining-attr-methods=__init__, - __new__, - setUp - -# List of member names, which should be excluded from the protected access -# warning. -exclude-protected=_asdict, - _fields, - _replace, - _source, - _make - -# List of valid names for the first argument in a class method. -valid-classmethod-first-arg=cls - -# List of valid names for the first argument in a metaclass class method. -valid-metaclass-classmethod-first-arg=cls - - -[DESIGN] - -# Maximum number of arguments for function / method. -max-args=5 - -# Maximum number of attributes for a class (see R0902). -max-attributes=7 - -# Maximum number of boolean expressions in an if statement. -max-bool-expr=5 - -# Maximum number of branch for function / method body. -max-branches=12 - -# Maximum number of locals for function / method body. -max-locals=15 - -# Maximum number of parents for a class (see R0901). -max-parents=7 - -# Maximum number of public methods for a class (see R0904). -max-public-methods=20 - -# Maximum number of return / yield for function / method body. -max-returns=6 - -# Maximum number of statements in function / method body. -max-statements=50 - -# Minimum number of public methods for a class (see R0903). -min-public-methods=2 - - -[IMPORTS] - -# Allow wildcard imports from modules that define __all__. -allow-wildcard-with-all=no - -# Analyse import fallback blocks. This can be used to support both Python 2 and -# 3 compatible code, which means that the block might have code that exists -# only in one or another interpreter, leading to false positives when analysed. -analyse-fallback-blocks=no - -# Deprecated modules which should not be used, separated by a comma. -deprecated-modules=optparse,tkinter.tix - -# Create a graph of external dependencies in the given file (report RP0402 must -# not be disabled). -ext-import-graph= - -# Create a graph of every (i.e. internal and external) dependencies in the -# given file (report RP0402 must not be disabled). -import-graph= - -# Create a graph of internal dependencies in the given file (report RP0402 must -# not be disabled). -int-import-graph= - -# Force import order to recognize a module as part of the standard -# compatibility libraries. -known-standard-library= - -# Force import order to recognize a module as part of a third party library. -known-third-party=enchant - - -[EXCEPTIONS] - -# Exceptions that will emit a warning when being caught. Defaults to -# "Exception". -overgeneral-exceptions=Exception diff --git a/uberwriter_lib/__init__.py b/uberwriter_lib/__init__.py deleted file mode 100644 index 8bbd9d2..0000000 --- a/uberwriter_lib/__init__.py +++ /dev/null @@ -1,24 +0,0 @@ -# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- -### BEGIN LICENSE -# Copyright (C) 2012, Wolf Vollprecht -# This program is free software: you can redistribute it and/or modify it -# under the terms of the GNU General Public License version 3, as published -# by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranties of -# MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR -# PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program. If not, see . -### END LICENSE - -### DO NOT EDIT THIS FILE ### - -'''facade - makes uberwriter_lib package easy to refactor - -while keeping its api constant''' -from . helpers import set_up_logging -# from . AppWindow import Window -from . uberwriterconfig import get_version