Browse Source

Release v2.1.1

drone 2.1.1
Nicolas Petton 4 years ago
No known key found for this signature in database GPG Key ID: E8BCD7866AFCF978
3 changed files with 76 additions and 47 deletions
  1. +74
  2. +1
  3. +1

+ 74
- 45
doc/Indium.texi View File

@ -21,7 +21,7 @@
Indium 2.0.0, Nov 28, 2018
Indium 2.1.1, Dec 06, 2018
Nicolas Petton
@ -144,6 +144,7 @@ The stepping debugger
Using sourcemaps
* Overriding sourcemap paths::
* Overriding script paths::
The inspector
@ -205,7 +206,7 @@ Indium is availabe on MELPA@footnote{}, MELPA Stable@footnote{h
@end menu
@node The Indium server,Using MELPA,,Installation
@anchor{installation server-installation}@anchor{7}@anchor{installation the-indium-server}@anchor{8}
@anchor{installation the-indium-server}@anchor{7}@anchor{installation server-installation}@anchor{8}
@subsection The Indium server
@ -277,7 +278,7 @@ Add the following to your Emacs configuration:
@end menu
@node Project configuration,General configuration,,Getting up and running
@anchor{setup project-configuration}@anchor{e}@anchor{setup configuration-file}@anchor{f}
@anchor{setup configuration-file}@anchor{e}@anchor{setup project-configuration}@anchor{f}
@subsection Project configuration
@ -300,7 +301,7 @@ Here is a minimalist @code{.indium.json} file.:
@end example
@node General configuration,Chrome/Chromium configuration options,Project configuration,Getting up and running
@anchor{setup id1}@anchor{12}@anchor{setup general-configuration}@anchor{13}
@anchor{setup general-configuration}@anchor{12}@anchor{setup id1}@anchor{13}
@subsection General configuration
@ -324,11 +325,14 @@ this @code{.indium.json} file is placed, but it can be overridden with the @code
@end example
Custom sourcemap path overrides can be set with @code{sourceMapPathOverrides}, see
@ref{14,,Using sourcemaps} for mode information on sourcemaps and debugging.
Custom script path overrides can be set with @code{scriptPathOverrides}. See
@ref{14,,Overriding script paths} for more information on script paths and debugging.
Custom sourcemap path overrides can be set with @code{sourceMapPathOverrides}. See
@ref{15,,Using sourcemaps} for more information on sourcemaps and debugging.
@node Chrome/Chromium configuration options,NodeJS configuration options,General configuration,Getting up and running
@anchor{setup chrome-configuration}@anchor{11}@anchor{setup chrome-chromium-configuration-options}@anchor{15}
@anchor{setup chrome-chromium-configuration-options}@anchor{16}@anchor{setup chrome-configuration}@anchor{11}
@subsection Chrome/Chromium configuration options
@ -361,7 +365,7 @@ Example configuration:
@end example
@node NodeJS configuration options,Starting Indium,Chrome/Chromium configuration options,Getting up and running
@anchor{setup nodejs-configuration}@anchor{10}@anchor{setup nodejs-configuration-options}@anchor{16}
@anchor{setup nodejs-configuration}@anchor{10}@anchor{setup nodejs-configuration-options}@anchor{17}
@subsection NodeJS configuration options
@ -399,7 +403,7 @@ Here is an example configuration for debugging Gulp tasks:
@end example
@node Starting Indium,NodeJS requirements,NodeJS configuration options,Getting up and running
@anchor{setup id2}@anchor{17}@anchor{setup starting-indium}@anchor{18}
@anchor{setup id2}@anchor{18}@anchor{setup starting-indium}@anchor{19}
@subsection Starting Indium
@ -418,7 +422,7 @@ specified from the configurations in the @code{.indium.json} project file.
@end itemize
@node NodeJS requirements,Chrome/Chromium requirements,Starting Indium,Getting up and running
@anchor{setup nodejs-requirements}@anchor{6}@anchor{setup id3}@anchor{19}
@anchor{setup nodejs-requirements}@anchor{6}@anchor{setup id3}@anchor{1a}
@subsection NodeJS requirements
@ -444,7 +448,7 @@ If you install NodeJS using @code{nvm}, chances are that Emacs won’t have it i
@code{exec path}. A simple solution is to use the excellent exec-path-from-shell@footnote{} package.
@node Chrome/Chromium requirements,,NodeJS requirements,Getting up and running
@anchor{setup chrome-chromium-requirements}@anchor{1a}@anchor{setup chrome-requirements}@anchor{5}
@anchor{setup chrome-requirements}@anchor{5}@anchor{setup chrome-chromium-requirements}@anchor{1b}
@subsection Chrome/Chromium requirements
@ -467,7 +471,7 @@ running, otherwise Chrome will simply open a new tab on the existing Chrome
instance, and the @code{remote-debugging-port} will not be set.
@node The REPL,Interaction in JS buffers,Getting up and running,Table of contents
@anchor{repl doc}@anchor{1b}@anchor{repl repl}@anchor{1c}@anchor{repl the-repl}@anchor{1d}
@anchor{repl doc}@anchor{1c}@anchor{repl repl}@anchor{1d}@anchor{repl the-repl}@anchor{1e}
@section The REPL
@ -479,7 +483,7 @@ instance, and the @code{remote-debugging-port} will not be set.
@end menu
@node Starting a REPL,Using the REPL,,The REPL
@anchor{repl starting-a-repl}@anchor{1e}
@anchor{repl starting-a-repl}@anchor{1f}
@subsection Starting a REPL
@ -503,13 +507,13 @@ JS syntax highlighting
Pretty printing and preview of printed values
Access to the object inspector (see @ref{1f,,The inspector})
Access to the object inspector (see @ref{20,,The inspector})
@end itemize
@node Using the REPL,Code evaluation & context,Starting a REPL,The REPL
@anchor{repl using-the-repl}@anchor{20}
@anchor{repl using-the-repl}@anchor{21}
@subsection Using the REPL
@ -520,7 +524,7 @@ Access to the object inspector (see @ref{1f,,The inspector})
@end menu
@node Keybindings,Reconnecting from the REPL buffer,,Using the REPL
@anchor{repl keybindings}@anchor{21}
@anchor{repl keybindings}@anchor{22}
@subsubsection Keybindings
@ -596,7 +600,7 @@ Instert the next input in the history.
@node Reconnecting from the REPL buffer,,Keybindings,Using the REPL
@anchor{repl reconnecting-from-the-repl-buffer}@anchor{22}
@anchor{repl reconnecting-from-the-repl-buffer}@anchor{23}
@subsubsection Reconnecting from the REPL buffer
@ -606,7 +610,7 @@ connection, and another one to kill Emacs buffers using this connection (the
REPL buffer, inspectors & debuggers).
@node Code evaluation & context,,Using the REPL,The REPL
@anchor{repl code-evaluation-context}@anchor{23}
@anchor{repl code-evaluation-context}@anchor{24}
@subsection Code evaluation & context
@ -618,7 +622,7 @@ the current stack frame, and will be able to access local variables from the
stack, etc.
@node Interaction in JS buffers,The stepping debugger,The REPL,Table of contents
@anchor{code-evaluation doc}@anchor{24}@anchor{code-evaluation interaction}@anchor{25}@anchor{code-evaluation interaction-in-js-buffers}@anchor{26}
@anchor{code-evaluation doc}@anchor{25}@anchor{code-evaluation interaction}@anchor{26}@anchor{code-evaluation interaction-in-js-buffers}@anchor{27}
@section Interaction in JS buffers
@ -642,7 +646,7 @@ add or remove breakpoints from your buffers.
@end menu
@node Evaluating and inspecting,Switching to the REPL buffer,,Interaction in JS buffers
@anchor{code-evaluation evaluating-and-inspecting}@anchor{27}
@anchor{code-evaluation evaluating-and-inspecting}@anchor{28}
@subsection Evaluating and inspecting
@ -659,7 +663,7 @@ Here’s a list of available keybindings:
@code{C-c M-i}: Inspect the result of the evaluation of an expression (see
@ref{1f,,The inspector}).
@ref{20,,The inspector}).
@code{C-c M-:}: Prompt for an expression to evaluate and inspect.
@ -672,20 +676,20 @@ Here’s a list of available keybindings:
@end itemize
@node Switching to the REPL buffer,Adding and removing breakpoints,Evaluating and inspecting,Interaction in JS buffers
@anchor{code-evaluation switching-to-the-repl-buffer}@anchor{28}
@anchor{code-evaluation switching-to-the-repl-buffer}@anchor{29}
@subsection Switching to the REPL buffer
Press @code{C-c C-z} from any buffer with @code{indium-interaction-mode} turned on to
switch back to the REPL buffer (see @ref{1c,,The REPL}).
switch back to the REPL buffer (see @ref{1d,,The REPL}).
@node Adding and removing breakpoints,,Switching to the REPL buffer,Interaction in JS buffers
@anchor{code-evaluation adding-and-removing-breakpoints}@anchor{29}
@anchor{code-evaluation adding-and-removing-breakpoints}@anchor{2a}
@subsection Adding and removing breakpoints
You need to first make sure that Indium is set up correctly to use local files
(see @ref{13,,General configuration}).
(see @ref{12,,General configuration}).
@itemize -
@ -721,9 +725,9 @@ You need to first make sure that Indium is set up correctly to use local files
The left fringe or margin can also be clicked to add or remove breakpoints.
Once a breakpoint is set, execution will stop when a breakpoint is hit, and the
Indium debugger pops up (see @ref{2a,,The stepping debugger}).
Indium debugger pops up (see @ref{2b,,The stepping debugger}).
Since Indium 0.7, breakpoints are supported in source files with an associated sourcemap, see @ref{14,,Using sourcemaps}.
Since Indium 0.7, breakpoints are supported in source files with an associated sourcemap, see @ref{15,,Using sourcemaps}.
@quotation Note
@ -733,7 +737,7 @@ connection is made Indium will attempt to add back all breakpoints.
@end cartouche
@node The stepping debugger,The inspector,Interaction in JS buffers,Table of contents
@anchor{debugger doc}@anchor{2b}@anchor{debugger the-stepping-debugger}@anchor{2c}@anchor{debugger debugger}@anchor{2a}
@anchor{debugger debugger}@anchor{2b}@anchor{debugger doc}@anchor{2c}@anchor{debugger the-stepping-debugger}@anchor{2d}
@section The stepping debugger
@ -744,7 +748,7 @@ connection is made Indium will attempt to add back all breakpoints.
@end menu
@node Using sourcemaps,Blackboxing scripts,,The stepping debugger
@anchor{debugger using-sourcemaps}@anchor{2d}@anchor{debugger sourcemaps}@anchor{14}
@anchor{debugger using-sourcemaps}@anchor{2e}@anchor{debugger sourcemaps}@anchor{15}
@subsection Using sourcemaps
@ -765,11 +769,12 @@ source-mapped. This can happen for instance when using Webpack.
* Overriding sourcemap paths::
* Overriding script paths::
@end menu
@node Overriding sourcemap paths,,,Using sourcemaps
@anchor{debugger webpack}@anchor{2e}@anchor{debugger overriding-sourcemap-paths}@anchor{2f}
@node Overriding sourcemap paths,Overriding script paths,,Using sourcemaps
@anchor{debugger overriding-sourcemap-paths}@anchor{2f}@anchor{debugger webpack}@anchor{30}
@subsubsection Overriding sourcemap paths
@ -798,8 +803,32 @@ sourcemap paths using @code{M-x indium-list-sourcemap-sources}.
@end quotation
@end cartouche
@node Overriding script paths,,Overriding sourcemap paths,Using sourcemaps
@anchor{debugger scriptpaths}@anchor{14}@anchor{debugger overriding-script-paths}@anchor{31}
@subsubsection Overriding script paths
If your application’s script URLs don’t correspond directly to where
their source code is located, you can use @code{scriptPathOverrides} to
tell Indium where to find the sources. It maps regular expressions to
Javascript substitution strings.
For example, if your project root is @code{/home/user/projects/foo/}, and
the source code for @indicateurl{http://localhost:3000/js/app.js/1234567890} is at
@code{/home/user/projects/foo/private/js/app.js}, you might set
@code{scriptPathOverrides} to:
"(/js/.*\\.js)/[0-9]+": "private$1"
@end example
This removes the trailing slash and digits, and it adds “private” to
the beginning of the path below the project root.
@node Blackboxing scripts,,Using sourcemaps,The stepping debugger
@anchor{debugger blackboxing-scripts}@anchor{30}
@anchor{debugger blackboxing-scripts}@anchor{32}
@subsection Blackboxing scripts
@ -809,13 +838,13 @@ expression of script paths to blackbox when debugging.
Blackboxed scripts are skipped when stepping in the debugger.
@node The inspector,Troublehooting,The stepping debugger,Table of contents
@anchor{inspector doc}@anchor{31}@anchor{inspector the-inspector}@anchor{32}@anchor{inspector inspector}@anchor{1f}
@anchor{inspector doc}@anchor{33}@anchor{inspector the-inspector}@anchor{34}@anchor{inspector inspector}@anchor{20}
@section The inspector
Indium features an object inspector that can be open on any object reference
from a REPL buffer (see @ref{1c,,The REPL}), the debugger (see @ref{2a,,The stepping debugger}), or
the result of any evaluation of JavaScript code (see @ref{25,,Interaction in JS buffers}).
from a REPL buffer (see @ref{1d,,The REPL}), the debugger (see @ref{2b,,The stepping debugger}), or
the result of any evaluation of JavaScript code (see @ref{26,,Interaction in JS buffers}).
To inspect the result of the evaluation of an expression, press @code{C-c M-i}. An
inspector buffer will pop up. You can also press @code{RET} or left click on
@ -829,7 +858,7 @@ object links from the REPL buffer.
@end menu
@node Using the inspector,,,The inspector
@anchor{inspector using-the-inspector}@anchor{33}
@anchor{inspector using-the-inspector}@anchor{35}
@subsection Using the inspector
@ -889,7 +918,7 @@ Jump to the previous object in the inspector
@node Troublehooting,,The inspector,Table of contents
@anchor{troubleshooting doc}@anchor{34}@anchor{troubleshooting troublehooting}@anchor{35}
@anchor{troubleshooting doc}@anchor{36}@anchor{troubleshooting troublehooting}@anchor{37}
@section Troublehooting
@ -904,7 +933,7 @@ If you run into issues with Indium, this document might help you.
@end menu
@node General advices before reporting issues,The Indium server doesn’t start,,Troublehooting
@anchor{troubleshooting general-advices-before-reporting-issues}@anchor{36}
@anchor{troubleshooting general-advices-before-reporting-issues}@anchor{38}
@subsection General advices before reporting issues
@ -921,12 +950,12 @@ Attaching the contents of the @code{*indium-process*} buffer can help as well in
case an error happens in the server process.
@node The Indium server doesn’t start,Breakpoints are not set not using sourcemaps,General advices before reporting issues,Troublehooting
@anchor{troubleshooting the-indium-server-doesn-t-start}@anchor{37}
@anchor{troubleshooting the-indium-server-doesn-t-start}@anchor{39}
@subsection The Indium server doesn’t start
First, make sure that @code{indium} is installed as documented in the
@ref{7,,The Indium server} section.
@ref{8,,The Indium server} section.
If you encounter the error:
@ -944,7 +973,7 @@ exec-path-from-shell@footnote{} package:
@end example
@node Breakpoints are not set not using sourcemaps,Breakpoints and debugging do not work using sourcemaps,The Indium server doesn’t start,Troublehooting
@anchor{troubleshooting breakpoints-are-not-set-not-using-sourcemaps}@anchor{38}
@anchor{troubleshooting breakpoints-are-not-set-not-using-sourcemaps}@anchor{3a}
@subsection Breakpoints are not set (not using sourcemaps)
@ -955,7 +984,7 @@ correctly.
@quotation Note
Indium needs to know how to map script source urls to files on disk.
It uses the @code{root} (alias @code{webRoot}) configuration option as the
base path, as described in the @ref{13,,General configuration} page.
base path, as described in the @ref{12,,General configuration} page.
@end quotation
@end cartouche
@ -964,12 +993,12 @@ parsed by the backend, displaying their sources mapped to files on disk. Check
that the file where you’re trying to add a breakpoint is listed.
@node Breakpoints and debugging do not work using sourcemaps,,Breakpoints are not set not using sourcemaps,Troublehooting
@anchor{troubleshooting breakpoints-and-debugging-do-not-work-using-sourcemaps}@anchor{39}
@anchor{troubleshooting breakpoints-and-debugging-do-not-work-using-sourcemaps}@anchor{3b}
@subsection Breakpoints and debugging do not work (using sourcemaps)
Correctly mapping sourcemaps to file locations can be tedious (see
@ref{14,,Using sourcemaps}).
@ref{15,,Using sourcemaps}).
Indium provides the command @code{indium-list-sourcemap-sources} to help
configuring sourcemaps correctly. This command displays a list of all
@ -977,7 +1006,7 @@ sourcemap sources in the runtime as file paths on disk. Check that your files
are listed there.
@node Indices and tables,,Table of contents,Top
@anchor{index indices-and-tables}@anchor{3a}
@anchor{index indices-and-tables}@anchor{3c}
@chapter Indices and tables

+ 1
- 1
indium.el View File

@ -5,7 +5,7 @@
;; Author: Nicolas Petton <>
;; URL:
;; Keywords: tools, javascript
;; Version: 2.1.0
;; Version: 2.1.1
;; Package-Requires: ((emacs "25") (seq "2.16") (js2-mode "20140114") (js2-refactor "0.9.0") (company "0.9.0"))
;; This program is free software; you can redistribute it and/or modify

+ 1
- 1
sphinx-doc/ View File

@ -62,7 +62,7 @@ author = 'Nicolas Petton'
# The short X.Y version.
version = '2.1'
# The full version, including alpha/beta/rc tags.
release = '2.1.0'
release = '2.1.1'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.