Texmaker is a free, open-source LaTeX IDE that Pascal Brachet of France has developed since 2003. It runs on Windows, macOS, and Linux, gathering editor, PDF viewer, build configuration, and completion into a single window. The later TeXstudio is a fork of Texmaker — which is why the two look alike. This page walks through what is distinctive about Texmaker: its build configuration (Quick Build), the completion and structure view that speed up writing, and SyncTeX for moving between source and PDF.
What Texmaker is
Texmaker is written in Qt, so it looks and behaves almost identically on the three operating systems. It is distributed under the GPL (GNU General Public License, v2): free to use and free to modify. It offers Unicode support, spell checking, code folding (you can collapse \part, \chapter, \section, and \begin{...}…\end{...} blocks), a palette of 400-plus math symbols, and a built-in PDF viewer.
The key point is that Texmaker does not bundle LaTeX itself. Compilation works by having Texmaker launch commands you installed separately — pdflatex, uplatex, dvipdfmx, and so on. So the order of installation is a TeX distribution first (e.g. TeX Live 2026), then Texmaker. All you do on the Texmaker side is configure how those commands are wired together.
It helps to understand the relationship with TeXstudio. TeXstudio is a separate project that branched off the Texmaker codebase, adding features of its own such as grammar checking and mirror cursors. The rough division is that Texmaker keeps configuration simple, as you would expect of the original, while TeXstudio is more feature-laden. Both share the same model, so being comfortable in one transfers immediately to the other.
Build configuration (Quick Build)
All settings live under Options → Configure Texmaker (called Preferences on macOS). Two sections govern building: Commands specifies what each command actually is (the executable and its arguments), and Quick Build chooses the order in which they run.
The heart of Texmaker is Quick Build: a single press of the toolbar button (or the F1 key) runs the command sequence you have chosen, start to finish. The Quick Build section lists the common combinations as radio buttons, and you pick one.
- PdfLaTeX + View Pdf — make a PDF directly with pdfLaTeX and show it. The shipped default; fine for mostly-Western text.
- LaTeX + dvips + View Ps — go via a DVI and turn it into PostScript with dvips, then show it.
- LaTeX + dvipdfm + View Pdf — go via a DVI and turn it into a PDF with dvipdfm(x), then show it. The standard route for Japanese.
- User : (define your own) — chain whatever commands you like with
|in the field above to build a custom flow.
In each command’s arguments, **% expands to the file name without its extension** (the master document’s name in master mode). For instance the PdfLaTeX field in the Commands section reads, by default, like the following — -interaction=nonstopmode keeps it from halting on errors, and -synctex=1 emits the SyncTeX information discussed below:
pdflatex -synctex=1 -interaction=nonstopmode %.texIf you would rather have the bibliography, the index, and the rerun count handled automatically, another option is to put latexmk in the Quick Build “User” field. latexmk resolves the dependencies and runs each step as many times as needed, so you do not have to lay out the combination yourself:
latexmk -pdf -synctex=1 -interaction=nonstopmode %.texConfiguring builds for Japanese
The long-standing standard for Japanese is upLaTeX + dvipdfmx. In Texmaker you change two places. First, in the Commands section, rewrite the LaTeX field to use uplatex and the Dvipdfm field to use dvipdfmx. Then, under Quick Build, select “LaTeX + dvipdfm + View Pdf.” Now pressing F1 processes upLaTeX → dvipdfmx in order and opens the PDF.
The concrete Windows settings given by the TeX Wiki are as follows. -kanji=utf8 fixes the input encoding to UTF-8, and -no-guess-input-enc turns off encoding auto-detection. Not forgetting -synctex=1 is the key to making inverse search work:
uplatex -no-guess-input-enc -kanji=utf8 -synctex=1 -interaction=nonstopmode %.texdvipdfmx %.dviThe other path is LuaLaTeX, which takes fewer steps if you are starting fresh in Japanese. Confirm that the LuaLaTeX field under Commands is in order, put lualatex -synctex=1 -interaction=nonstopmode %.tex in the Quick Build “User” field, and it goes straight to a PDF without a DVI (Japanese is handled via the luatexja package or the ltjsarticle class). If you prefer to keep configuration in one place, you can also describe the upLaTeX or LuaLaTeX flow in a .latexmkrc and have Texmaker merely call latexmk.
Completion and the structure view
Texmaker’s completion cuts keystrokes. Typing \ followed by a letter pops up a list of candidate commands, narrowing as you add letters. The main LaTeX commands can be inserted quickly this way, and for commands that take arguments, input spots (placeholders) are shown so you can fill the braces one after another.
Cross-references get help too. Writing \ref{...} or \pageref{...} offers the labels present in the document, and \cite{...} inserts the bibliography keys. You stall less often trying to half-remember a name.
The Structure view on the left is a map of your document that updates automatically as you type. It lays out headings (\section and friends), labels (\label), and the files pulled in via \input/\include in a hierarchy; clicking an entry jumps to that spot. Even in long manuscripts or multi-file projects you can move around without losing the overall picture.
SyncTeX (forward and inverse search)
SyncTeX maps source lines to positions in the PDF and back. Texmaker’s built-in PDF viewer supports it, giving you forward search — jumping from the line you are on in the editor to the matching place in the PDF — and inverse search, jumping back from a spot in the PDF to the corresponding source line. The hunt for “which line produced this paragraph” disappears while proofreading.
Two conditions enable it. First, pass **-synctex=1** to the compile command so a synchronization file (.synctex.gz) is produced — writing the commands as shown above is enough. Second, open the PDF in the built-in viewer (in the Commands section, set the Pdf Viewer to the built-in viewer, and enable “Embed” if you want it docked in the main window). Opening in an external viewer disables the two-way jumps.
The gestures are simple. As the manual puts it, with -synctex=1 on the compile command the built-in viewer jumps automatically to the position in the PDF that corresponds to the current line — that is forward search. For inverse search, right-click on a word in the built-in viewer and choose from the context menu, and the editor jumps to the matching line.