Friday, November 18, 2016

Papeeria News, Nov 18: updated Plot Builder

TL;DR: edit plot data and styles in a convenient table interface; use Plotly or Gnuplot to build plots

Updated Plot UI

We have upgraded the user interface of our Plot Builder. The builder has been somewhat hidden until today; now it goes much more visible with rich UI for editing data files and for tuning plot appearance. Check out the new "Table" tab in the editor when you open csv files!

All plots from the project are easily accessible from the new Plots pane. You can scan through the produced images, open Plot Builder from the Plots pane or create new plot files. 

Plot Builder UI, Plots Pane and Viewer pane showing the compiled plot

Integration with Plotly

In addition to Gnuplot engine, those who are registered on great Plotly service can now use Plotly to build plots. Switch between Gnuplot and Plotly using "Build Plot" dropdown in the Plot Table UI.

Saving generated files to the project

Last, but not least: you can now save any file which appears in the preview pane into the project. Plots are saved automatically, and if you want to save a PDF with the compiled paper, you can do it with "Save" dropdown in the Viewer pane.

More docs are available on Papeeria Documentation pages.

Monday, November 7, 2016

Papeeria News, Nov 7: lualatex and bugfixes

TL;DR: you can now use LuaTeX engine


LuaTeX is a TeX compiler which is capable of running Lua scripts in TeX documents. It might be handy in some use cases, e.g. for automated layout of trees or for building plots. Check out this project to see a couple of examples.

You can choose LuaLaTeX engine in the project settings or in the Compile dropdown. It is supported in both TeXLive 2015 and TeXLive 2016 distros.


We have made autocomplete less obtrusive and fixed a few bugs. We also significantly improved typing Japanese using standard input methods in Microsoft Windows and Mac OSX. 

Monday, October 17, 2016

Papeeria News, Oct 17: references completion

TL;DR: autocompletion suggests labels and bibliography references

LaTeX is very good at  referencing document elements and citing bilibography. If you want to reference a figure in your text, you just put \label tag in the figure and use \ref command to reference it. If you need to reference a biliography record, you use \cite command. Both \ref and \cite format a reference using chosen style,so that "see the results of comparison with Other Product \cite{competitors} in the table \ref{competitor-analysis}" converts to "see the results of comparison with Other Product [3] in the table 2".

Unfortunately it is easy to forget the id of a referenced element, and when  you need to type it in the \cite tag, you often would open a bibliography file to recall what id did you assign to a paper.

Papeeria will help you a little bit by suggesting the list of labels and bibliography records in autocompletion popup. They should show up automatically when cursor enters \ref or \cite tag, provided that the project has been previously compiled. We extract labels and bibliography records from the artifacts produced by TeX compiler so we need at least one compile cycle.

Monday, October 3, 2016

Papeeria News, Oct 3: instant preview of the math formulae

TL;DR: Papeeria shows math formula previews

LaTeX excels at typesetting maths. However, if you make a typo or mistake in non-trivial math equation you get no immediate feedback and have to recompile the document to see if firmula looks good. Papeeria provides live preview of mathematics so you can see how the equation looks like without recompiling the document.

Formula preview shows up at the bottom of the text editor automatically when cursor enters math mode which is either delimited with single or double-dollar symbols, or inside equation environment. If cursor is already at the bottom of the editor, the preview moves to the top edge.

Matrix in the formula preview

Under the hood we use great KaTeX library developed by folks from Khan Academy, so the supported macros are restricted to the subset supported by KaTeX. The subset is prettywide, so chances are that your equations will look fine. KaTeX paints unknown tags with red color, so even if there is something which it can't render, you will still see partial result mixed with unrecognized tags.

Saturday, September 10, 2016

Papeeria News, Sep 10: live autocompletion with snippets

TL;DR: autocompletion now suggests TeX environments and math macros; live autocompletion is turned on by default.

Autocompletion worked in Papeeria since the very early days, however user had to trigger it manually by hitting Ctrl+Space. Besides, it was very basic and suggested words from the opened file as completions.

Today  we updated autocompletion. Now it suggests the most important environments and macros, such as lists and sections. When cursor enters display maths, autocompletion also suggests math macros, from greek letters to sums and integrals.

Autocompletion is now live and doesn't require explicit Ctrl+Space keystroke from user. If you're not the fan of live completion, you can switch it off in the editor settings panel.

Autocompletion popup inside equation suggesting completions for \s

Useful hint for those who want to be autocompletion ninja: Tab key is your friend. It applies the selected completion (just like Enter) and moves cursor between the arguments if there are any in the chosen snippet. Snippet for \sum on the picture above has three arguments, and you can fill in them quickly using Tab key.

Tuesday, August 30, 2016

Papeeria News: tuning spellchecker and autocompletion

If you need to use different spellchecker language for some particular files, you can override this setting per-file.

Spell check with English language globally and Russian in the current file

If you like live word completion or autoinsertion of closing brackets when you type opening one, you can switch them on in the Autocompletion options

Switching on Live autocompletion

Tuesday, August 9, 2016

Papeeria News, Aug 9: Bracket Matcher

TL;DR: use Ctrl+Chift+9 to highlight matching and non-matching brackets closest to the cursor position.

Missing bracket might be a real nightmare when editing LaTeX documents. Should you miss one curly bracket, and your document is not compiling and you see something like this in the logs:

Runaway argument?
{\emph {itemnum} that makes little sense when hyphenated across lines\ETC.
! File ended while scanning use of \mbox.
<inserted text> 
<*> main.tex
I suspect you have forgotten a `}', causing me
to read past where you wanted me to stop.
I'll try to recover; but if the error is serious,
you'd better type `E' or `X' now and fix your file.

! Emergency stop.
<*> main.tex
*** (job aborted, no legal \end found)

It is not easy to spot the place where missing bracket is supposed to be, despite that TeX tries to give you a clue. Now in Papeeria you can use Bracket Matcher tool which will make your life easier.

Hit  Ctrl+Shift+9  (Cmd+Shift+9 on Mac) to switch Bracket Matcher mode on. When running, Bracket Matcher searches for the closest pair of matching brackets around the cursor. If it finds such pair, it highlights the region between them with light blue color.

Bracket Matcher highlighting matching curly brackets around cursor
However, if it finds a mismatch, e.g. because there is an opening bracket and no corresponding closing bracket or if opening and closing brackets are different (have you ever mistyped square bracket  ]  instead of curly bracket  }  ?), it highlights the region with rose color. 

Bracket Matcher highlighting mismatched region

Bracket Matcher rebuilds the highlight as cursor moves, so you can quickly find where exactly you missed the bracket. You can switch Bracket Matcher off using the same shortcut  Ctrl+Shift+9  

Thanks to our summer intern Mikhail Pochatkin who contributed a lot of energy into the development of this feature!

Saturday, July 30, 2016

Papeeria News, Jul 30: new PDF viewer

TL;DR: new PDF viewer keeps viewport position and scaling

There have been two PDF viewer options in Papeeria: one can view PDF files with "native" viewer or with Google Docs viewer. They work great, but suffer from a major drawback: they are "black boxes" to our web app and are not controllable through the API. We cannot set zooming scale or scroll to some specific region, we don't know which page user is looking at. All that we can do with our viewers is to open some concrete page after loading, and we do our best to find out what page corresponds to the cursor in the editor, so that after recompilation the viewer showed something more meaningful than just the first page.

Our new viewer is based on Mozilla's PDF.JS library. This library is also used in "native" viewer in Firefox, and our viewer is essentially the same base library with a different UI. PDF.JS library has an API, and it allows us to preserve the viewport after recompilation. If you opened some page in your document, zoomed to 400% scale, scrolled to some particular region on the page and recompiled the document, you will see exactly the same region of the same page at the same zooming scale after recompilation, provided that you document compiles fine of course. This is especially handy when you're working on small details in a big math formula or in a complex table.

You can switch between all three viewers with a dropdown in the panel above the viewer pane.

PDF.JS viewer showing a page at 400% scaling scrolled to some math formula
Sliding navigation bar and viewer switcher are visible in the top part.

PDF.JS viewer is currently in beta, with the plan to promote it to default viewer when we finish working on a few missing features:

  • There is no continuous scroll. You can use a navigation bar which slides from the top side of the viewer to navigate through the pages or mouse wheel/touchpad if page has no scrollbars.
  • There is no sync between editor and PDF viewer.
  • Keyboard is not yet supported

Thursday, June 9, 2016

Papeeria News, June 9: TeX Live 2016

TL;DR: you can optionally use TeX Live 2016 to compile your projects

TeX Live 2016 which was officially released a few days ago is now available as an option in Papeeria. You can opt-in into using TeX Live 2016 by choosing it in the Compile dropdown or in the project settings on your Dashboard page.

We're going to keep TeX Live 2015 as the default distro for a while, but we encourage you to try the new distro right away!

TeX options in the Compile dropdown
TeX options in the dashboard

Tuesday, April 26, 2016

Papeeria News, Apr 25: easier to join and easier to leave

Immediate joining

If Bob want to invite Alice to collaborate on his project, and Alice is already registered and has verified her email, Bob can just add Alice's email into the list of collaborators. Access will be granted immediately (page refresh may be required for Alice), although Alice will still get a notification email.

Immediate leaving

If Alice no more wants to collaborate in Bob's project, she can select the project in the "Shared Projects" section in the dashboard and leave it using Trash icon in the right pane.

Tuesday, April 12, 2016

Papeeria News, Apr 12: secure connection and word count

TL;DR: 55 years ago a spacecraft with Yury Gagarin aboard was launched into space! And oh, yes, we just've launched word count feature and switched our server to secure connection.

Word count

Word count statistics
This small feature sometimes may turn out pretty useful. Now we count words and some other statistics in your document and show it in the log pane. We use texcount utility which basically makes a simple parsing of the source code. It should work fine for straightforward documents where text is not widely generated by custom macros. Please refer to texcount docs for the details of counting and tuning.

Secure connection

Secure connection everywhere
Until today we've been using secure connections for the most sensitive requests like authentication. Now we have completely switched to secure protocol. If you have an open session, you need to sign in again.

Wednesday, March 16, 2016

Papeeria News, Mar 16: meet LaTeX-powered Markdown!

TL;DR: you can now create documents using Markdown syntax with built-in LaTeX

LaTeX is very good at processing complex documents with maths and cross-references, but very often we need just a simple document with minimal markup, no more than sections, lists and bold text. Markdown and other wiki-style languages are perfect for that, but what if you also want to insert a math formula? In this case a mix of Markdown and LaTeX could be the solution and we just've launched Markdown support in Papeeria.

You can collaboratively edit simple Markdown code and compile it into high-quality PDF. Just create an empty document with .md extension, type some Markdown code and click Compile. Here is an example:

# Hola!

Testing **Markdown** in Papeeria.

Behind the scenes we convert Markdown to LaTeX using great Pandoc tool and then compile LaTeX as usually, which means that you get most of the benefits which come with LaTeX compiler: automated typography, hyphenations, etc., and yes, you can use maths! Pay attention that translated LaTeX file is added to the project next to the original Markdown. You can edit it if you want to the next time you compile the original Markdown your edits will be overwritten.

We compile using XeTeX engine and use Droid Serif font by default because of its comprehensive support of many languages. You can change the font and use your favorite one with \setmainfont command. Refer to Markdown Cheatsheet document (which of course is written in Markdown) for the details.

Markdown support is in Preview stage which means there may be glitches and missing bits. Here is a brief overview of restrictions:

  • you can only use ".md" file extension for Markdown documents
  • spellchecking and discussions are not yet ready to work with Markdown docs
  • there is no quick preview: you pass the whole cycle of compiling to get the result. 
  • Markdown is not supported in anonymous demo projects

We'll be working on improving Markdown in Papeeria. Stay tuned!

Monday, February 29, 2016

Papeeria News, Feb 29: link sharing option

If you want to invite someone to work with you on your project, you can now generate read or write link and send them to your colleague using any communication tool. Switch on Link Sharing to get read and write access links.

Link Sharing option

Any registered user who gets the sharing link will be able to access the project. Links are permanent and can be used many times. If you need to invalidate the links, switch Link Sharing off. Switching it back on later will generate new links.

Learn more about project sharing from our help pages.

Monday, February 22, 2016

Papeeria News, Feb 22: feature which you don't want to use and graduation from Beta

TL;DR: we added a feature which we hope you will never need to use and consider ourselves graduated from Beta

Leslie Lamport (that guy who created LaTeX, yo) defined distributed system as the one where the crash of a computer you've never heard of stops you from getting any work done. This perfectly applies to online services as well and sometimes we hear from people that they don't use online services for writing their documents exactly because of that. And in many cases outage it is not the fault of the service: it is the fault of the datacenter where the service is running.

Fortunately we have never faced such outages but our competitors did:
Since our beta launch in September 2013 we have been concerned about the availability of our users' data and we're glad to announce that from now on Papeeria users will have access to their projects even if a datacenter where Papeeria servers are running becomes unavailable.

Papeeria Carbon Copy [1] is another instance of Papeeria which runs in a separate availability zone and is synced with the main site. In the unlikely event when the main Papeeria site goes down, you can still access your data through the Carbon Copy site.

We do our best to make sure that you will never have to use this feature and constantly add monitoring and self-healing measures to the main site.

However, now we can consider ourselves as graduated from beta phase where we have been for the last 2+ years. Service availability was the key thing which kept us in beta according to our quality standards.

[1] Papeeria Carbon Copy:

Thursday, February 4, 2016

Vote for Papeeria on TeX Stack Exchange!

Hey Papeeria users,
we need your help. Yes, again.

TeX Stack Exchange site, one of the best Q&A resources on LaTeX, is running Community Promotion Ads campaign. They will be showing small banners on their pages for free during the whole 2016 provided that banner gets enough votes from the community members.

Our banner participates in the competition and we need your vote!

How to vote: just click upvote (pen nib upwards) icon to the left of our banner in our answer:

Who can vote: those who have more than 15 reputation points on TeX SE. If you have them then just vote. If you don't have reputation on TeX Stack Exchange, but have good reputation on other sites from Stack Exchange network, e.g. on Stack Overflow, then you can associate your account on TeX SE with account on Stack Overflow and most likely you'll get enough reputation points to vote.

Thanks in advance for your help!

Tuesday, January 26, 2016

Papeeria News, January 26: bibtex results in full-text search

TL;DR: Matches from BibTeX files show up in a separate formatted list

We added BibTeX "vertical" to our full-text search. Now when there are bibliography matches to your search query you'll get a filtered list with formatted bibtex snippets next to plain-text results:

BibTeX search results

Tip: there is a clickable \cite{} text at the bottom of every snippet. In most browsers clicking this text will copy the reference to the clipboard and you'll be able to insert it into the text where needed.

For the users of free plan full-text search is restricted to the currently opened project only. Upgrade to Delta to benefit from searching across all projects and other premium features.

Thursday, January 14, 2016

Papeeria News, January 14: full-text search

TL;DR: you can use full-text search in Papeeria. Hit Ctrl+Shift+F.

Did you ever find yourself trying to guess which file out of dozens in your thesis includes  that figure? Or maybe trying to recall a specific LaTeX trick which made Beamer slide happy? Wanted to search across all your TeX files? Well, now you can. We just have launched a preview of full-text search.

Button which opens full-text search dialog sits in the top-right corner. You can use a handy keyboard shortcut Ctrl+Shift+F (or Cmd+Shift+F on Mac OSX) to access the dialog.

Full-text Search dialog with search results

Full-text search returns both full and partial matches and understands morphology, so you don't have to type extremely precise queries. Search results are ranked and we show the best results first. In case if you need more results, you can request them by clicking "load more" link.

In the search result snippets matches are highlighted, and clicking a snippet will open the matching file in the new tab and will position the caret exactly at the snippet start.

Full text search is in preview which means that it may not work perfectly sometimes. We're monitoring how it behaves and will update it with bugfixes and enhancements in the course of the next few weeks. Don't hesitate to file an issue or drop us an email if search is broken or works wrong.

This is a premium feature. Users who are subscribed to paid plan Delta can search across all projects which they own or collaborate in. Those who use free Epsilon plan can search currently opened project only.

Want to upgrade to Delta? Get a great discount on annual plan until January 21.