f5d7f518fa
This PR includes various fixes and improvements, most of which I discussed with @somas95 a couple of weeks ago. It also includes some refactoring, mainly to improve encapsulation. Fixes #17 Fixes #75 Fixes #90 Fixes #120 Fixes #122 Some considerations/questions follow. **Commit messages** I recommend reviewing each commit message carefully, as they explain the thinking behind each change. Not everything is small or linear, and hopefully the commit message explains the background and reasoning properly. If anything is missing, I'm happy to try to explain. **Translations** There are a few capitalization/copy fixes. I am unsure how this affects translations, or if there's any work I can to make the transition easier. For instance, how are the po files updated? **Styling** Styling is subjective, and although I claim to address #90, it's important to note that I'm a fan of UberWriter's simplistic style, reminiscent of iA Writer's approach. As such, I didn't introduce any sizing nor color changes, as I don't personally agree with this direction. Instead, the changes are subtle: * For links, the link/syntax part is greyed out, without any further changes * For code blocks, they are indented similarly to quotations, without any further changes **UI changes** There are (very minor) UI changes within the places that were touched, mainly preferences and the export dialog. Most of these are around improving small things, such as spacing (eg. multiples of 8), slightly broken alignments, etc. The only exception would be the removal of ODT as one of the export options in the top bar. As before, subjective, but I find that a sub-window's top bar with 6 horizontal buttons is a little overwhelming, and considering that ODT is still available within the advanced tab, I propose that we remove it as a default option and have a more balanced top bar. I am assuming that PDF/HTML are the most used, but please let me know if that's not the case. **Further work** I have a few more tasks planned for the upcoming weeks, hopefully built on top of this codebase as it makes some of them much easier. [Here's a screenshot of my Todoist.](https://cl.ly/4160755d210d/gnome-shell-screenshot-3MMO0Z.png) Hopefully this helps knowing what to expect. 😊 |
||
---|---|---|
data | ||
flatpak | ||
help | ||
po | ||
screenshots | ||
scripts | ||
tests | ||
uberwriter | ||
.gitignore | ||
AUTHORS | ||
COPYING | ||
ISSUE_TEMPLATE.md | ||
Makefile | ||
PKGBUILD | ||
README.md | ||
autogen.sh | ||
configure | ||
lipsum.md | ||
markdown_test.md | ||
requirements.txt | ||
setup.py | ||
uberwriter.in |
README.md
Uberwriter
About
Uberwriter is a GTK+ based distraction free Markdown editor, mainly developed by Wolf Vollprecht. It uses pandoc as backend for markdown parsing and offers a very clean and sleek user interface.
Install
You can get now UberWriter on Flathub! Get it now
Contributions and localization
If you want to help to localize the project, just join us at Poeditor Any help is appreciated!
Running and building it
To use uberwriter, please make sure you have some dependencies installed:
- Pandoc, the program used to convert Markdown to basically anything else (the package name should be pandoc in most distributions)
- Of course, gtk3 etc. needs to be installed as well since this is a gtk application
- webkit2gtk is also needed for the preview panel
- Please find these packages on your distribution:
python3 python3-regex python3-setuptools python3-levenshtein python3-enchant python3-gi python3-cairo
- Optional dependencies are
texlive
for the pdftex module.
You can run UberWriter with ./bin/uberwriter
without installing it in the system,
but you'll need to install and compile the schemas before:
sudo cp data/de.wolfvollprecht.UberWriter.gschema.xml /usr/share/glib-2.0/schemas/de.wolfvollprecht.UberWriter.gschema.xml
sudo glib-compile-schemas /usr/share/glib-2.0/schemas
It's also possible to build, run and debug a flatpak package. You'll need flatpak-builder for this:
- cd to the flatpak dir of the repo
flatpak-builder --install --force-clean some_folder_name uberwriter.json
(this installs and cleans the build folder)flatpak run de.wolfvollprecht.UberWriter
If you can't find Uberwriter after this, it's due to a Flatpak bug. Try to export it to a local repo before installing it:
cd flatpak
flatpak-builder --repo=org.foo.Uberwriter --force-clean build uberwriter.json
flatpak remote-add --no-gpg-verify user org.foo.Uberwriter
flatpak install foo de.wolfvollprecht.UberWriter
Where org.foo.repo
is the name of your repo, you can change 'foo' with the name you want
Then you can run it as before or from your system launcher.
If you want to update an existing installation, just run
flatpak update de.wolfvollprecht.UberWriter
You can also debug it with the following: flatpak-builder --run --share=network some_folder_name uberwriter.json sh
If you want to install it using setuptools, simply run python3 setup.py build install