Zettlr

Your One-Stop Publication Workbench

GPL-3.0 License

Stars
9.7K
Committers
114

Bot releases are hidden (Show)

Zettlr -

Published by nathanlesage over 6 years ago

!!! UPDATED DEBIAN AND FEDORA INSTALLERS !!!

Today's release includes a ton of bug fixes and improvements of existing features. This update will make your experience using Zettlr better and will deliver a brand-new kind of experience. As always, let us mention some of the best improvements this release has to offer.

The first major improvement to 0.15.1 is a huge change we've implemented into the rendering of the preview list. Until now, the list has been rendered at once. That means that all files and folders have been rendered directly. Especially users that have quite spectacular amounts of files in some of their folders will have noticed how Zettlr stops reacting for some time until the rendering is done. This can be really annoying and so we've switched to Clusterize.js, a library that enables Zettlr to only render the data chunk by chunk. Doing this, all amounts of files can be rendered in the same (short) amount of time, making the experience a lot smoother. If you scroll through your files, more chunks will be loaded dynamically, making even the longest file lists bearable.

The second improvement concerns the attachment pane. Now there's a small symbol next to its header, letting you open the containing directory with your system's default file browser. This way, you are able to directly access the given directory without having to navigate to it from your browser as well, letting you skip this annoying task.

A third improvement concerns the saving of files. While at first you had to explicitly save all changes to your files, in the last versions we've improved it first by an autosave feature (with which you still had to save explicitly) and then by an automatic save feature. Yet if Zettlr saves a file every 300 miliseconds (which was the delay we've implemented then) this means a huge decrease in writing performance if you stop writing for a short amount of time. We've overcome that barrier with this version, having Zettlr automatically save your files every five seconds and, if you choose to open another file, it will automatically save your file before actually opening the next file. This way you won't have to worry about unsaved changes anymore. It is in this light that we've now removed the modification indicator in the title bar and the save button on the toolbar. We'll keep the menu entry (and, therefore, the shortcut Cmd/Ctrl+S) available for all of you who feel safer explicitly calling the save function (which is always good practice).

Among these major changes, there's a lot happening, so here's—as always—the changelog:

Changelog

GUI and functionality

  • Switched the directory indicator with the collapse indicator on root directories, so that the first always stays first.
  • Huge performance increase in rendering the preview list.
  • Small fix to the word count. Now an empty editor does not show that there's a word written.
  • Removed the Zoom menu entry from the Window menu on macOS.
  • The Reload-shortcut in debug-mode is now F5.
  • Small fix to the Tag-recognition (now a # sign immediately followed by a delimiter character (e.g. spaces, line breaks or apostrophes) will not render a tag formatting).
  • The Attachment pane will now scroll if there are too many attachments in it.
  • Added an option to open the currently selected directory in the system's file browser (e.g. Finder on macOS or Explorer on Windows). The respective button resides next to the attachment pane's header.
  • Small fix to the context menu: It will popup where the click occurred, and not where the mouse is when the menu is actually shown (noticeable especially when right-clicking a misspelled word).
  • Augmented the autoclose-pairs with the default German quotes and .
  • Changed the save function so that it does not save immediately, but gracefully implements a way to save changes any time a potentially file-closing command is issued (such as selecting another file).
  • Changes to the design of the preview list.
  • Removed the save-button from the toolbar and now Zettlr will not show you an indicator whether or not there are unsaved changes, because normally everything should be saved. In case changes are not saved under strange circumstances, Zettlr will still prompt you to save them if they would be lost.
  • Fixed a small error that led Zettlr to believe that it doesn't need to reorder the opened root files and directories, although it should have, thereby having newly opened files pop up not at the top of the directories' list but at random positions somewhere in the directories.

Under the hood

  • Switched Preview-list rendering to Clusterize.js to keep huge lists renderable and reduce loading times.
  • Removed the now unnecessary ListView and ListViewItem classes.
  • Removed the unnecessary file-revert command handler in ZettlrIPC.
  • Removed a console.log in ZettlrPreview.
  • Added a isModified() function in ZettlrRenderer.
  • Changes to ZettlrRendererIPC to accomodate graceful saving procedure.
  • Upgraded dependencies.
  • Coloured the output of the less compiler script so that it's easy to discern whether or not an error or a warning occurred.
Zettlr - v0.15.1 — License Change to GNU GPL v3

Published by nathanlesage over 6 years ago

Again it's release day. This update ships quite a few good things that fix some bugs from the previous major release.

This update also includes a license change! Zettlr will now be licensed under the strong copyleft license GNU GPL v3, which prohibits any closed-source adaptions of Zettlr. All modifications of Zettlr have to be open source as well, now. THIS ALSO APPLIES TO ALL PREVIOUS CODE FRAGMENTS, ALTHOUGH THE LICENSE FILE OF THESE OLDER COMMITS SAYS OTHERWISE!

Changelog

GUI and functionality

  • Switched license from MIT to GNU GPL v3. This also includes all prior releases!
  • Now if there is a valid URL in the clipboard it will be inserted as the URL on all images and links created, not just if there's nothing selected.
  • Fixed a bug that prevented the opening of links if clicked with Alt-key pressed.
  • Added the code indicators (backticks) to the list of auto-complete pairs.
  • Fixed the rendering of internal links.
  • Small changes to the design of file IDs.
  • Moved the resize handles of quicklook windows completely out of the windows themselves so that they are more easy to reach and don't block the scrollbar.
  • Fixed the colours of the directory sorters in dark mode.
  • Translated the formattings.
  • Updates to the readme.
  • ID generation now also works if there is something selected.
  • More generally: All CodeMirror commands (such as changing the formatting of a selection) will retain the selection you have made (i.e. they will save them, run the command and afterwards re-select what was selected previously).
  • Fixed a small bug that could lead to errors while searching using the OR-operator.
  • Updater now shows your current version in the update window.
  • Small fixes to the styling of the update dialog.

Under the hood

  • Small change to the zkn-link regular expression (was greedy, now it is lazy) to prevent huge misrenderings in case two links were on one line.
  • Removed the unnecessary _sort()-function in the ZettlrDirectories-class.
Zettlr -

Published by nathanlesage over 6 years ago

After yet another huge delay, here's the next version. It brings major changes to all aspects of Zettlr, enhancing your experience a lot. There are three major improvements that deserve to be mentioned here.

But first some smaller changes:

  • Shift-Clicking links does not work anymore! Now the modifier key used for opening links in Zettlr is the ALT-Key!
  • All formattings have been moved to a single pane in the toolbar, indicated by the carriage return.
  • If you open your app for the first time after the update, nothing will be opened. You will have to re-open your previous root directory again!

The multi-root feature

Now Zettlr is able to open multiple root directories and root files at once. This means that you can now do the following:

  • On the first start of Zettlr, there won't be any open files or directories. You can open directories by pressing Cmd/Ctrl+O, just as you opened the one root directory in previous versions. Files can be opened by two ways: First, double clicking on them in your file browser (just as you would do with all other files) or, second, drag and drop them on the app. It will automatically detect whether or not this is a directory or a file and will open it accordingly.
  • The opened paths will be persistent, meaning that all open files and directories will be re-opened on any start of the app.
  • Close them by right-clicking them and selecting the respective menu item.

This should now bring an extreme increase of comfortability for all users.

The attachment pane

Now we've added an attachment pane that can be opened using either Cmd/Ctrl+3 on your keyboard, selecting it from the View-menu or simply clicking the paperclip on the right hand side of the toolbar. It will simply list all files that are in your currently selected directory that are not markdown files. To decide, which files should be listed there and which are not, head over to your preferences and select the Attachments-tab. There you can list all the extensions of the files you wish to have available in the pane, separated by comma and with leading dots (e.g. .pptx instead of only pptx. Zettlr will try to add the dot if you forgot it.)

Clicking on them will simply open them in your default system viewer.

First features using the Zettelkasten method

You may have heard of the German sociologist Niklas Luhmann's method of storing information using a complex note taking system, called Zettelkasten. There's a huge amount of literature covering the field, and Zettlr wants to enable you to use the methods scientists around the world use to organize their notes and ideas. Therefore, beginning with this release, you will have these first options to make more of your notes:

  • Give a file a unique ID by typing @ID:<your-id> somewhere inside the file. Zettlr will automatically detect it and assign the ID to your file. In this way, you are not only able to find your ID using the global search, but also link to the ID.
  • If you type in something enclosed in square brackets (like [[these are search terms]]) you will trigger an internal search for these terms. You can trigger the search by ALT-Clicking these links.
  • In case Zettlr finds such a "Wiki-Link" that contains an ID in the format [[@ID:<your-id>]], it will automatically try to find an exact match. If there is a file with the exact ID, it will directly open it in your editor. This way you can quickly navigate through all of your notes and are not reliant upon the tree view and preview pane to do so.
  • Also, in case any such Wiki-Link exactly matches the name of a file, excluding the extension, it will also try to open it directly, so that a Wiki-Link that matches a file name will automatically open the file in the editor. Such links are not completely stable, because you can always rename files. That's what the next feature is for:
  • In case, you ALT-Click a Wiki-Link, this will automatically trigger a global search in the current directory for the ID or the terms inside the square brackets. This way you can find out first, which files link to a specific file, if the search term is an ID, or, second, you can find out which other files contain the specified search terms, making it something like a "saved search", because you don't have to type it again every time.
  • The last feature we've introduced in this version is tagging. Now you can simply tag files using Twitter-like hashtags (e.g. #your-hashtag-here). These links also ALT-Clickable, triggering a search for the exact tags.

We hope that these changes show the dedication I am putting into the App and hope you can make a lot of use of them.

As to the nature of this big release, there also have been a lot of breaking changes to the API which are listed below in our changelog:

Changelog

GUI and functionality

  • Fixed the button text color in popups.
  • More shadow under the popups (makes them stick out more in the white mode).
  • Now it is possible to open Markdown files directly with Zettlr by double clicking them or dragging them onto the app. Dropping also works for directories (#3).
  • Zettlr now tells the Operating System that it is capable of handling .md- and .markdown files.
  • Small fixes to the translations.
  • Added an about dialog.
  • Now Zettlr also converts "standalone" links (e.g. simple detected URLs without Markdown formatting around them) into clickable links. Attention: Clicking now works with ALT instead of Shift!
  • Added a small popup to view some stats on your writing.
  • Fixes to the word count (now also splits along line breaks).
  • Moved all formattings to a small popup (indicated by the carriage return symbol). Also added other formatting possibilities, such as code, headings and blockquotes.
  • Fixes to the formatting commands.
  • Added an attachment pane (#6).
  • Added an option to sort directories chronologically or according to name (#4).
  • Begun adding zkn-functionality to Zettlr:
    • Now it is possible to use @ID:<your-ID> to give an ID to a file (generate one using the Toolbar Button or by pressing Cmd/Ctrl+L). If multiple IDs are defined in such a way, the first found will take precedence.
    • You can now tag your files using the Twitter-like syntax: #hashtag. Alt-Clicking on them will trigger a search for the tag.
    • You can now link searches in your files. If you type [[search terms]] this will trigger a directory-wide search for the search terms. If the link contains an ID in the format [[@ID:<your-ID>]], Zettlr will try to get an exact match. If there is a file using that ID, it will be immediately opened. Also, a directory-wide search for all files referencing this ID will be conducted.

Under the hood

  • Fixed a small bug in the ZettlrWatchdog that prevented remotely added directories from being detected by the app.
  • Given the classes ZettlrFile and ZettlrDir more authority over what happens with them. Now they're handling all events by themselves.
  • Made the paths mandatory on creation of new ZettlrFile and ZettlrDir instances.
  • Added isFile() and isDir() helper functions to check if paths actually denote a valid file or directory.
  • Added openPaths configuration option to hold all opened paths and re-open them on every start.
  • Small fix to the loading mechanism of the configuration to allow flexible arrays (needed for the openPaths option).
  • Found A LOT of unnecessary and duplicate code in the Zettlr main class and removed it.
  • Handle open events in main.js and make Zettlr definitively a single app instance.
Zettlr -

Published by nathanlesage over 6 years ago

This is an urgent hotfix, because in our last version, 0.14.2, we have overlooked one simple typo that prevents you from deleting anything from inside Zettlr. We're sorry for the inconvenience and hereby provide you with a small patch that fixes this.

Changelog

GUI and functionality

  • Fixed a bug that prevented deletion of files and folders.
  • Removed the now defunct autosave option in preferences.

Under the hood

  • Fixed a type error in ZettlrWindow that passed undefined instead of the window to the showMessageBox function.
Zettlr -

Published by nathanlesage over 6 years ago

Happy Easter everyone!

Today's update only includes two "visible" changes/fixes. The first: Now you can actually decypher what you are typing on the creation of a new file/directory or renaming them. We fixed the colours of the text so it should work better now. The second: As suggested by a hint of a friend we've firstly removed the revert feature, because it could be easily misread as an "Undo" button, and secondly switched to automatic saving of the app. So you won't have to hit Ctrl/Cmd+S ever again. All of your changes are now automatically written to disk!

To announce some future changes: We've succeeded in figuring out a way to implement the opening of multiple files and directories in Zettlr, so from now on it won't take much longer for this long awaited feature.

Changelog

GUI and functionality

  • Fixed input text color in popups (e.g., for new files and directories).
  • Removed the autosave functionality. Now Zettlr automatically saves all changes "completely."

Under the hood

  • Updated less.js (dev-dependency) to latest version.
  • Updated chokidar to latest version.
  • Updated electron-builder (dev-dependency) to latest version.
  • Removed all autosave-functions.
  • ZettlrWatchdog can now add multiple paths to watch
  • ZettlrFile can now also be root (e.g. have the Zettlr-object as parent)
Zettlr -

Published by nathanlesage over 6 years ago

We've prepared a small patch for Zettlr. This includes some bugfixes, further consolidation of the user interface and some other goodies on our way towards the next feature: Multiple open root directories and standalone files.

Changelog

GUI and functionality

  • Finally got rid of the horizontal scrollbar in the editor, that was visible on Windows and Linux systems
  • Also, customized the scrollbar style to be more decent
  • Major fixes to the User Interface (now looks way more modern and less cluttered)
  • Fixed an error that did not update the snippet of a file on remote change

Under the hood

  • Added other files and directories to the ignore dirs of chokidar
  • Fixed a small bug in the poll()-function
Zettlr -

Published by nathanlesage over 6 years ago

It's time for another release! This time, there's not much to the functionality, but we've begun rewriting a lot of code so that we can prepare some other features that we'd like to introduce in the next versions, such as opening multiple root directories and standalone-files. So this time you won't get that punchy little extra functionality, but to give you the idea of what we're up to, we've begun improving the GUI, so that the looks of Zettlr now should feel much more "modern".

As always, the complete changelog:

Changelog

GUI and functionality

  • Now Zettlr can detect relative image paths (i.e. relative to the file in which they are referenced) and show these images successfully
  • Fixed a bug that did not update the modification time of a file on save.
  • Fixed the non-selection of the current file on directory selection
  • Fixed a small bug that sometimes could throw an error when moving directories within the app
  • Now a quicklook window can be brought to front by simply clicking its title
  • Hid the textarea by default, so that on startup the editor field is clean
  • Design improvements

Under the hood

  • Begun another code rewrite. This time, the focus is on two parts: First, prevent any access of object properties from other objects than this. Instead, use public functions (also, prevent calling of private functions from the outside). Second: Try to, again, move out some functionality from the Zettlr main class to shorten it.
  • Removed unnecessary function calls in the renderer.
  • Also added support for the yarn package manager
Zettlr -

Published by nathanlesage over 6 years ago

It's release-day again! This release, as always, includes several new features that have been requested by the community or that have been planned long ago. These include:

  • An Autosave feature: Now Zettlr can automatically create autosaves for you and also lets you revert to the last saved state of a file. What will follow shortly is an option to restore an autosave after the app or your computer crashed!
  • Update checking: Now Zettlr checks your version against the newest release here on GitHub and tells you whether or not you already got the newest version. You can also trigger the check manually by selecting Help -> Check for Updates from the menu.
  • Toolbar descriptions: As requested, Zettlr now tells you the function of a toolbar button when you hover over it with your mouse.
  • Better Pandoc/LaTeX support: Until now, especially users on macOS had to always enter the full path to both Pandoc and PDFLaTeX, because of some limitations of Electron. Now, it should find all things automatically (if not, please open an issue!) What has also been changed is that you can now download Pandoc and LaTeX directly by selecting the appropriate entries in the Help-menu of the app and Zettlr will tell you whether or not it has found Pandoc or PDFLaTeX on your system, making the error messages look much more descriptive.

Also, I've fixed many, many small things that I either forgot in previous versions or couldn't fix because of too much work. So 0.13.0 is also a big improvement in stability overall.

And now the changelog, as always:

Changelog

GUI and functionality

  • Fixed a bug that could lead to errors and misbehaviour if a huge number of directories and files was added
  • Added toolbar button descriptions. Simply hover over a button with your mouse to learn about its functionality
  • Added an autosave feature. Now, Zettlr keeps automatic saves of your current file.
  • Added a reversion feature. With the revert button you can restore the editor content to the last saved state.
  • Added an automatic check for updates. It is run on every start of Zettlr and can be called programmatically by clicking Help -> Check for Updates
  • Fixed an error that disabled the end-search button in the searchbar.
  • Fixed an error that did not refresh the preview list when a new file was created by saving an empty file.
  • Fixed an error that did not select newly created directories in the tree view, although they were selected as could be seen in the preview pane.
  • Small changes in the system integration.
  • Additional check whether or not Pandoc and LaTeX are installed on the system.
  • Added menu entries for downloading LaTeX and Pandoc.

Under the hood

  • Added the ignoreDir and ignoreFile helper functions to check whether or not a specific path should be excluded or not. This applies to directories and the watchdog. Ignored directory patterns (as regular expressions) reside in source/common/data.json.
  • Ignoring the jquery-ui.min.js file on docs generation.
  • Improved the documentation of the main classes.
  • Updated to Electron 1.8.3.
  • Updated Electron builder to 20.4.0.
  • Forgot to update the dependencies for export last time.
  • Moved the polling interval into data.json
  • Added class ZettlrUpdater with barebone functionality.
  • Added additional_paths in source/common/data.json to automatically append to electron's PATH as to make sure the additional fields in the preferences are no longer needed (unless in special cases).
Zettlr -

Published by nathanlesage over 6 years ago

It has been a little bit more than a fortnight for the next release. Yet, here we go again and now with heavy improvements, so the waiting finally comes to fruition. We are happy to announce several major new features that will greatly improve your workflow!

The three outstanding features are as following:

Inline image rendering

Now, if you place an image in the form ![Caption](link/to/image.jpg) into a new line, it will be automatically loaded and displayed. If the image path is not found or invalid, Zettlr will simply show a placeholder in its stead. Edit the image by clicking on it or moving with the cursor into it. Move the cursor outside again to re-render the image.

Inline link rendering

Whenever Zettlr detects a link in the form [Caption](link.domain.com), it will render it nicely. To follow the link, simply Shift-click on it. The editing and updating of a link works just as with images.

Table of Content generation

Click the hashtag (#) symbol in the toolbar to open a popup containing all headings that are present in the currently opened file. And they are even numbered! Simply click on a heading to jump directly to it!

Changelog

GUI and functionality

  • New feature: Integrated dynamically generated Table of Contents! Simply click the hashtag symbol and a popup will appear that lets you quickly navigate through all headings in your file.
  • New feature: Now images are automatically displayed, if they are on a single line (only the image, no other text)!
  • New feature: Now links are automatically rendered! Simply shift-click on them! (closes #12)
  • Improved the markdown shortcuts. Now, if nothing is selected, when you trigger the bold or italics option, the cursor will automatically be placed inside the formatting marks, so that you can start typing without having to worry about the placement of the cursor.
  • Now, if there is a valid URL in the clipboard when you trigger the insert link/image commands, it will be taken automatically as the linking target, so that you only have to type in the text it should link to.
  • Added Open-button to the toolbar to select a new directory (closes #2)
  • Switched the icon font from fontawesome to the WebHostingHub-Glyphs
  • Small UI fix in the preview listing
  • Small UI fix: Now Zettlr auto-closes the following pairs of characters: () [] {} '' "" »« “” ‘’ ** __.

Under the hood

  • Moved supported filetypes to unified file source/common/data.json
  • Documentation for all files added.
  • ESDoc-support integrated for API documentation. Simply run npm run docs:build to generate a full documentation in resources/docs
  • Moved the handleEvent() functions from the main objects to the IPC classes.
  • Moved the toolbar buttons to source/renderer/assets/toolbar/toolbar.json as in the example of Electron Menu, to have more dynamic control over the generation of the toolbar.
  • Updated dev-dependencies
Zettlr -

Published by nathanlesage over 6 years ago

After some time, here is the next milestone on our way to version 1.0! This update includes some GUI changes, such as a new pomodoro timer, but most importantly it includes several changes that make the feeling of the app much more native and faster. For instance, renaming and creating files and directories now does not open up an ugly, big dialog window, but a much smaller popup that lets you enter a name much more neat than before.

Also, now we can finally present to you ready-packed Debian- and Fedora installer packages that let you install the software much easier on UNIX-based systems! These packages will be added later today.

As always:

Changelog

GUI and functionality

  • Introducing a pomodoro counter! Now you can simply click on the circle at the right end of the toolbar to start a pomodoro counter. It alternates task-phases of 25 Minutes with short breaks of five minutes and, after every fourth task-phase, a longer break of twenty minutes. It also notifies you when a phase is over with a small notification and a soft sound. Head over to the official website to get to know what this technique is about.
  • Switched to default Lato font on all platforms (embedded the font in the app)
  • Additional check whether or not a file/directory already exists at the target location when moving by drag'n'drop
  • Some fixes to the Quicklook-windows
  • Moved some development functions into a "debug" mode that can be activated in the preferences.
  • Now the zoom in/out menu commands only zoom the editor itself, not the whole application
  • Added a small little button to end a search (and thereby make visible again all files)
  • Switched most dialogs to the smaller (and really nice) popups
  • Moved the Exporting options directly to the new share button
  • Now Zettlr shows default context menus for text fields
  • Fixed an issue on opening new project directories that provided you with the current directory's path instead of the project directory
  • Reversed direction of the changelog to display most recent changes at the top of the file.

Under the hood

  • Included jQuery and CodeMirror as npm packages for easier updating
  • Added a ZettlrPopup-class for easy displaying of small forms and info texts, this will replace most ZettlrDialog-forms, because we don't need such a massive dialog box for a single text field (or something else)
  • Updated electron to version 1.8.2, updated other dependencies.
  • Updated scripts section. Now the available commands are:
    • npm run start: Start the development environment
    • npm run less: Same command as previous, now only with more output
    • npm run build:quick: Quick'n'dirty unpacked release for current platform
    • npm run release:this: Build and pack the app for the current platform
    • npm run release:mac: Build and pack for macOS x64 as DMG
    • npm run release:win: Build and pack for Win x64 as NSIS installer
    • npm run release:linux: Build and pack for Linux x64 both as deb and rpm
Zettlr -

Published by nathanlesage over 6 years ago

After some days off, here it finally is: version 0.10.0! This version includes only a few minor changes and bug fixes. But what it does include is a major overhaul of the graphical interface.

What does this mean?!

Very simple:

  1. The app now uses significantly less energy, because everything dedicated to displaying your files and directories has been supercharged and now works at maximum efficiency!
  2. The app is now blazingly fast! As it does not re-render everything on every click, it is now much faster and more responsive. While you could, if you wanted to, save a file a thousand times, thereby completely locking down the application, this is now much harder (besides, why would you want to repeatedly hit Save, anyway?)

All changes, as everytime:

Changelog

GUI and functionality

  • Fixed a small bug that did not remove the file list if the open directory was removed from the file system. Now, if the current directory is deleted, Zettlr will automatically select the parent directory.
  • Small fix to the translations.
  • Added a toolbar button that also triggers the export dialog.
  • Fixed an issue that prevented you from autocorrecting misspelled words.
  • Fixed the sorting of directories (now case insensitive)
  • Fixed an error that didn't update the ID of a file on renaming
  • Fixed an issue that threw errors sometimes while moving directories

Under the hood

  • Massive rewrite of the logic behind the preview pane. Now only necessary changes are actually re-rendered (and not, as was the case until now, everything), which decreases the locking-potential of the application as well as the average energy impact. Additionally, now it is possible simply to spit out one updated paths-object from main to simply trigger a (possible) re-render.
  • Also massive rewrite of the logic behind the tree view. The changes have the same effects as those in the preview pane.
Zettlr -

Published by nathanlesage over 6 years ago

Again several fixes. Zettlr now includes a background process that checks for changes in the filesystem that have been triggered remotely (e.g. by using the file explorer/finder or if you sync your files via cloud services) and integrates them. Although the service is still in development it should work sufficiently for now. For it to work correctly, heavy changes need to be made in the renderer process, which will be under way in version 0.10.0, which should be ready for rollout in about a week or a fortnight.

Changelog

GUI and functionality

  • Changed paper format in the odt-template from "Letter" to "DIN A4."
  • Now dialogs are correctly positioned (centered)
  • Implemented notifications that can be used variously
  • Watchdog now monitors changes to the file system
  • Small fixes in functionality and translations

Under the hood

  • Added notification service (can be triggered by sending a notify-event to the renderer or call notify() on a body element.)
Zettlr -

Published by nathanlesage over 6 years ago

This update fixes a vulnerability (CVE-2018-1000006) on some electron versions that affected Windows distributions. Zettlr has not been affected by this vulnerability at all, as it does not register itself as protocol handler! We are just updating to make sure Zettlr will stay safe in the future as well.

Other fixes in this patch includes broken PDF export in version 0.9.0 and a better HTML preview (now you should be able to nicely print out the HTML preview in case you wish to do so). Full changelog:

Changelog

GUI and functionality

  • Fixed broken PDF export in 0.9.0
  • Small improvement in the HTML export template. Now if you want to print out the HTML file, it should look way better than before.

Under the hood

Zettlr -

Published by nathanlesage over 6 years ago

Another release with heavy changes in the functionality — therefore we've updated the minor-version again to 9! Most changes have been made "under the hood", so they won't be visible during normal use of the app.

Yet, there are two distinct changes that you will notice and that will drastically improve your working experience:

  1. The footnote generation has been heavily improved. Now it should reliably add and remove footnotes so that you can add and remove footnotes with ease and. Also, footnotes are visible on hover, so that you can preview what they contain without having to scroll up and down all the way.
  2. We've begun adding some information to the preview pane — now the last modification-date will be displayed in the snippets section for you to see when you've lastly edited the file.

And again, there have been many bigger and smaller changes to the functionality of the software. See for them the full changelog:

Changelog

GUI and functionality

  • Fixed a bug that did not show the exact word count of 1.000 words in the toolbar.
  • Translated the word counter into de_DE, en_US, en_GB and fr_FR
  • The preview pane now does not scroll to its top on saving if it does not contain the current file
  • Heavily improved footnote placement and removement
  • Footnotes now show on hover to ease previewing.
  • Fixed a small error that threw errors on deleting file with no file selected
  • Fixed selection accuracy in Quicklook windows after they have been resized.
  • Added modification time of files in the file preview.
  • Modified the night mode and snippets toggler to display the status as checkmark (also amended the translations respectively)

Under the hood

  • Updated development dependencies
  • Additional security check in the trans() method
  • Footnote plugin now features way better RegEx recognition and works reliably.
  • Also, made the footnote placements and deletions to only create one single history event (so that you don't have to press Cmd/Ctrl+Z twice to remove the footnote/re-add the footnote)
  • Added basic watchdog functions. Not very sophisticated by now but it works.
  • Now package.json does not trigger a rebuild of all modules when electron-builder is called (as we only rely on those already prebuilt)
  • Again some rewrites to slimline the app
  • Renamed events (now dir and file are prepended for easier identification)
  • Now the renderer is completely autarc concerning configuration as darkTheme and snippets. This means the renderer can now be reloaded in dev mode without screwing up the config in main. (afterWindowStart() has been removed and set in the renderer)
  • Wrapped the menu generation into a class (making it possible to set menu items based on configuration options)
Zettlr - Emergency patch for Windows and Linux

Published by nathanlesage almost 7 years ago

Emergency patch for Windows and Linux platforms: During development I've overlooked a minor mistake in the application menu file that rendered the complete menu unusable on Windows as well as Linux. I am sorry for that inconvenience and have provided an emergency patch. All it does is fix the menu on those platforms.

This bug does not affect macOS, as the critical piece of code is never executed on that platform.

Changelog

This is an emergency patch. It fixes an error on Windows and Linux systems that disabled the complete main menu, making it unable to execute commands from the menu (e.g., opening a new root folder).

  • Fixes a bug that rendered the whole application menu unusable
  • Minor localization fixes
Zettlr -

Published by nathanlesage almost 7 years ago

Only two days after v0.7.0 I can announce yet another release of Zettlr! This time it's mainly focused on the editor itself. Also, I've finally added the toolbar I planned to create some weeks ago.

As always, the full changelog:

GUI and functionality

  • Context menu over a erroneous word now gives you suggestions on possible replacements; selecting them will replace the word.
  • Fixed a small rendering bug that caused the editor not to correctly select text after hide/unhide of either the tree view or file preview pane.
  • Included a toolbar and moved the global search out of the preview pane
  • Fixed a small bug in which the title of the main window still showed the title of the currently opened file after it has been deleted
  • Fixed a bug that made it impossible to export to PDF on Windows when Zettlr was installed to the Program Files-directory
  • Fixed a bug that did not close the overlay if there were no dictionaries selected for spell checking
  • Finally implemented the make/unmake itemized or numbered list function
  • Also, finally added an easy way to insert and remove footnotes.
    • Fixed an error in which you could not save "empty" files on the fly if you just started typing into the editor without any file open.

Under the hood (i.e.: technical stuff)

  • Replaced npm package trash with electron internal shell.moveItemToTrash()
  • Hardened the translation package against potential errors and accounted for also probably missing translations
Zettlr -

Published by nathanlesage almost 7 years ago

Major features

Huge changes are on their way! This version includes a big number of improvements to v0.6.0, so be prepared! The most important features are the following:

Spellchecking

Now Zettlr can automatically check your spelling. It will initialize with your detected system's language. You can select the languages to be automatically spellchecked via the preferences panel. If you do not want spellchecking to be enabled at all, just deselect all languages in the preferences. Of course, you can activate more than one spell checker — then you can write bi- or tri- or whatever-lingual! But, of course, activating too many spellcheckers at once will significantly slow down the start up of the app. (But once it's loaded, it will work just fine!)

Miss a language you'd like to have spellchecking available for? No problem! Zettlr uses the monumental hunspell spellchecking! So just look in the list of official translation dictionaries, and I'll add it. (I didn't want to bloat the app with languages in the beginning.)

App translation

Because it was fitting to the spellchecking, I've also begun translating the app. Now it comes with four languages pre-shipped: German, French and English. I've added en_US and en_GB, just to be sure. The French translation may sound pretty strange, but that's because I'm not very good at French. So any mistake you spot: Please PR me!

To change the language of the app, just switch to the preferences!

Miss a language? Feel free to grab on of the translation files (located in source/common/lang) and replace all strings with translations. Attention: Please mind the small %s-variables in the translation! They will be replaced with, e.g., the name of a directory or file to be renamed or something like that! So make sure you keep them in your translations.

Quicklook

We all know the problem of single-window-apps that you cannot preview a file (to, e.g., extract notes or ideas) while you write in one specific file. Zettlr resolves that problem now by introducing Quicklooks. As I'm a mac user, I've borrowed the name from the very useful feature to preview any file in the file explorer by pressing space. In Zettlr, you can now right-click any note and select Quicklook from the context menu. The file will then open in a small overlay window from where you can copy text or just read along while you edit a completely different file.

Searching works just as well as resizing or dragging the window around. Also, double-click on the title bar to "minimize" the window. Click the small "x"-button to close a window.

I hope these features make Zettlr an even better app (at least, they do for me)!

Full Changelog

And now the full list from the changelog, as every time:

  • Included Spellchecking (en_US, en_GB, fr_FR, de_DE, more languages on request)
  • Translated app into English, German and French.
  • Introducing Quicklook: Right-click on any note and click "Quicklook" to open the file in a small overlay window. This enables you to keep open a file while simultaneously reading (and copying text) from different files.
  • Fixed a minor error with the detection of clickable links
  • Fixed an error that prevented searching for exact phrases
  • Added a short check that Zettlr does not try to move a directory into a subdirectory.
  • Multiple minor fixes and improvements
  • Preview pane and directory tree view can now be hidden via Cmd/Ctrl+1 and Cmd/Ctrol+2
Zettlr -

Published by nathanlesage almost 7 years ago

Changes in this version:

  • Now the file lists are automatically sorted on renaming files to immediately reflect a possibly changed order.
  • The global search now also includes the name of the file
  • Fixed a small error that prevented Zettlr from searching the first file in the preview pane
  • Fixed an error in the inter-process communication (IPC) that led to unexpected behavior when using Shortcuts.
  • Fixed an error that prevented renaming of directories if a file was selected.
  • And behind the scene: We've rewritten the whole code base and made it more efficient — that's why the version has switched to 0.6.0
Zettlr - v0.5.1

Published by nathanlesage almost 7 years ago

This release is a minor patch fixing two functions that were broken in 0.5.0:

  • Due to a logical error in the script, it was impossible to create new directories in the trees. This is now fixed.
  • Pandoc has some issues accepting pdflatex as the PDF engine when passed with the --pdf-engine-flag. So now Zettlr just pushes your pdflatex directory into PATH (if you have specified the full path to pdflatex in your preferences, e.g. /Library/TeX/texbin/pdflatex) so that pandoc may access it without the flag.
Zettlr - Intermediary Version

Published by nathanlesage almost 7 years ago

This is the first online version of Zettlr. There are still some features to be added. The functionality already included works stable and reliably.

Includes (all compiled for x64):

  • A DMG-file for macOS
  • An EXE-Installer (including Uninstall) for Windows
  • A ZIP-File for Linux-distributions (unfortunately there is no .deb-package right now)