documentation fixes:Wed Oct 17 04:03:28 UTC 2018

This commit is contained in:
emacspace 2018-10-17 04:03:28 +00:00
parent 4024b60757
commit 0fb6470acf
9 changed files with 121 additions and 121 deletions

View File

@ -308,27 +308,27 @@ testable layer is enabled in turn.
To add tests for a layer, do the following: To add tests for a layer, do the following:
1. Create a subfolder of =tests/= corresponding to the layer you want to test. 1. Create a subfolder of =tests/= corresponding to the layer you want to test.
2. Write a file called =dotspacemacs.el= in that folder. It should be a minimal 2. Write a file called =dotspacemacs.el= in that folder. It should be a minimal
dotfile that enables the layer in question (and other layers it may depend dotfile that enables the layer in question (and other layers it may depend
on). on).
3. Write a number of files with tests. Please try to separate unit and 3. Write a number of files with tests. Please try to separate unit and
functional tests. Look at existing tests for clues. functional tests. Look at existing tests for clues.
4. Write a =Makefile= in that folder. It should define three variables. 4. Write a =Makefile= in that folder. It should define three variables.
- a list of additional files to load before testing (relative - a list of additional files to load before testing (relative
to the root Spacemacs folder). This should typically be =init.el=. to the root Spacemacs folder). This should typically be =init.el=.
- a list of unit test files in the current folder. - a list of unit test files in the current folder.
- a list of functional test files in the current folder. - a list of functional test files in the current folder.
See existing tests for examples. See existing tests for examples.
#+BEGIN_SRC makefile #+BEGIN_SRC makefile
TEST_DIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST)))) TEST_DIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
LOAD_FILES = ... LOAD_FILES = ...
UNIT_TEST_FILES = ... UNIT_TEST_FILES = ...
FUNC_TEST_FILES = ... FUNC_TEST_FILES = ...
include ../../spacemacs.mk include ../../spacemacs.mk
#+END_SRC #+END_SRC
5. Add the new test to list of tests in =travis/run_build.sh=. 5. Add the new test to list of tests in =travis/run_build.sh=.

View File

@ -405,26 +405,26 @@ More on this in the next section.
* The Spacemacs loading process * The Spacemacs loading process
The Spacemacs loading process can be summarized as follows: The Spacemacs loading process can be summarized as follows:
1. Spacemacs goes through all the enabled layers and evaluates their files. 1. Spacemacs goes through all the enabled layers and evaluates their files.
First =layers.el= is loaded to declare layer dependencies. Then =packages.el= First =layers.el= is loaded to declare layer dependencies. Then =packages.el=
and =funcs.el= are loaded, but nothing happens from them since these files and =funcs.el= are loaded, but nothing happens from them since these files
only define functions and variables, then the changes introduced by only define functions and variables, then the changes introduced by
=config.el= are applied. =config.el= are applied.
2. Spacemacs checks which packages should be downloaded and installed. To be 2. Spacemacs checks which packages should be downloaded and installed. To be
installed, a package must be installed, a package must be
- included by a layer that the user has enabled, - included by a layer that the user has enabled,
- not be excluded by any other layer that the user has enabled, - not be excluded by any other layer that the user has enabled,
- not be excluded by the user herself, and - not be excluded by the user herself, and
- there must be at least one =<layer>/init-<package>= function defined for - there must be at least one =<layer>/init-<package>= function defined for
it. it.
Alternatively, if a package is part of the end users Alternatively, if a package is part of the end users
=dotspacemacs-additional-packages=, it will also be installed. =dotspacemacs-additional-packages=, it will also be installed.
3. All packages which should be installed are installed in alphabetical order, 3. All packages which should be installed are installed in alphabetical order,
=package.el= built-in Emacs library is in charge of implicit dependencies. =package.el= built-in Emacs library is in charge of implicit dependencies.
Installed packages not following the rules of 2. are removed as well as Installed packages not following the rules of 2. are removed as well as
their dependencies if possible. (This last behavior is optional but default.) their dependencies if possible. (This last behavior is optional but default.)
4. The =pre-init=, =init= and =post-init= functions for each installed package 4. The =pre-init=, =init= and =post-init= functions for each installed package
are executed in turn. are executed in turn.
It is step four that interests us. It is very important that a package is not It is step four that interests us. It is very important that a package is not
installed if no =init= function is defined for it. installed if no =init= function is defined for it.

View File

@ -90,29 +90,29 @@ recommended.
This method is considered secured and is the recommended way to configure This method is considered secured and is the recommended way to configure
rcirc. rcirc.
1) If you want to use =authinfo.gpg= you have to enable the support for it by 1) If you want to use =authinfo.gpg= you have to enable the support for it by
setting =rcirc-enable-authinfo-support= to =t= in your dotfile: setting =rcirc-enable-authinfo-support= to =t= in your dotfile:
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(setq-default dotspacemacs-configuration-layers '( (setq-default dotspacemacs-configuration-layers '(
(rcirc :variables rcirc-enable-authinfo-support t))) (rcirc :variables rcirc-enable-authinfo-support t)))
#+END_SRC #+END_SRC
2) In your =~/.authinfo.gpg= file store your credentials like this: 2) In your =~/.authinfo.gpg= file store your credentials like this:
#+BEGIN_EXAMPLE #+BEGIN_EXAMPLE
machine irc.freenode.net port nickserv user <user> password <passwd> machine irc.freenode.net port nickserv user <user> password <passwd>
#+END_EXAMPLE #+END_EXAMPLE
3) At last you need to provide your servers configuration in the 3) At last you need to provide your servers configuration in the
=dotspacemacs/user-config= function of your dotfile: =dotspacemacs/user-config= function of your dotfile:
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(setq rcirc-server-alist (setq rcirc-server-alist
'(("irc.freenode.net" '(("irc.freenode.net"
:user-name "spacemacs_user" :user-name "spacemacs_user"
:port "1337" :port "1337"
:channels ("#emacs")))) :channels ("#emacs"))))
#+END_SRC #+END_SRC
*** Connecting behind a ZNC bouncer and storing the credentials in authinfo *** Connecting behind a ZNC bouncer and storing the credentials in authinfo
This methods is also secured since it uses authinfo _but_ you must secure your This methods is also secured since it uses authinfo _but_ you must secure your
@ -131,40 +131,40 @@ setup. If it is not the case then it is recommended to read about ZNC
**** Note **** Note
For now authinfo is mandatory to use the ZNC configuration. For now authinfo is mandatory to use the ZNC configuration.
1) To enable ZNC support set the variable =rcirc-enable-znc-support= to =t= in 1) To enable ZNC support set the variable =rcirc-enable-znc-support= to =t= in
your dotfile: your dotfile:
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(setq-default dotspacemacs-configuration-layers '( (setq-default dotspacemacs-configuration-layers '(
(rcirc :variables rcirc-enable-znc-support t))) (rcirc :variables rcirc-enable-znc-support t)))
#+END_SRC #+END_SRC
2) In your =~/.authinfo.gpg= file store your credentials like this: 2) In your =~/.authinfo.gpg= file store your credentials like this:
#+BEGIN_EXAMPLE #+BEGIN_EXAMPLE
machine freenode.spacemacsserver.me port irc user spacemacs_user/freenode password ZNC_PASSWORD machine freenode.spacemacsserver.me port irc user spacemacs_user/freenode password ZNC_PASSWORD
machine geekshed.spacemacsserver.me port irc user spacemacs_user/geekshed password ZNC_PASSWORD machine geekshed.spacemacsserver.me port irc user spacemacs_user/geekshed password ZNC_PASSWORD
#+END_EXAMPLE #+END_EXAMPLE
*Important* =port= must be set to =irc=. This is a convention of the layer to *Important* =port= must be set to =irc=. This is a convention of the layer to
retrieve the credentials for the ZNC configuration. retrieve the credentials for the ZNC configuration.
3) Then setup your servers configuration using subdomains in the 3) Then setup your servers configuration using subdomains in the
=dotspacemacs/user-config= function of your dotfile. The =:auth= keyword arguments =dotspacemacs/user-config= function of your dotfile. The =:auth= keyword arguments
will be replaced by the credentials stored in your =~/.authinfo.gpg=. will be replaced by the credentials stored in your =~/.authinfo.gpg=.
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(setq rcirc-server-alist (setq rcirc-server-alist
;; This will replace :auth with the correct thing, see the doc for that function ;; This will replace :auth with the correct thing, see the doc for that function
'(("freenode" '(("freenode"
:host "freenode.spacemacsserver.me" :host "freenode.spacemacsserver.me"
:port "1337" :port "1337"
:auth "spacemacs_user/freenode" :auth "spacemacs_user/freenode"
:channels ("#emacs")) :channels ("#emacs"))
("geekshed" ("geekshed"
:host "geekshed.spacemacsserver.me" :host "geekshed.spacemacsserver.me"
:port "1337" :port "1337"
:auth "spacemacs_user/geekshed" :auth "spacemacs_user/geekshed"
:channels ("#jupiterbroadcasting")))) :channels ("#jupiterbroadcasting"))))
#+END_SRC #+END_SRC
* Key Bindings * Key Bindings

View File

@ -43,24 +43,24 @@ layer for it to have any effect.
You can customize the user experience of auto-completion with the following You can customize the user experience of auto-completion with the following
layer variables: layer variables:
1. =auto-completion-return-key-behavior= set the action to perform when the 1. =auto-completion-return-key-behavior= set the action to perform when the
~RET~ key is pressed, the possible values are: ~RET~ key is pressed, the possible values are:
- =complete= completes with the current selection - =complete= completes with the current selection
- =nil= does nothing - =nil= does nothing
2. =auto-completion-tab-key-behavior= set the action to perform when the ~TAB~ 2. =auto-completion-tab-key-behavior= set the action to perform when the ~TAB~
key is pressed, the possible values are: key is pressed, the possible values are:
- =complete= completes with the current selection - =complete= completes with the current selection
- =cycle= completes the common prefix and cycle between candidates - =cycle= completes the common prefix and cycle between candidates
- =nil= does nothing - =nil= does nothing
3. =auto-completion-complete-with-key-sequence= is a string of two characters 3. =auto-completion-complete-with-key-sequence= is a string of two characters
denoting a key sequence that will perform a =complete action= if the sequence denoting a key sequence that will perform a =complete action= if the sequence
has been entered quickly enough. If its value is =nil= then the feature is has been entered quickly enough. If its value is =nil= then the feature is
disabled. disabled.
4. =auto-completion-complete-with-key-sequence-delay= is the number of seconds 4. =auto-completion-complete-with-key-sequence-delay= is the number of seconds
to wait for the auto-completion key sequence to be entered. The default value to wait for the auto-completion key sequence to be entered. The default value
is 0.1 seconds. is 0.1 seconds.
5. =auto-completion-idle-delay= is the number of seconds to wait before suggesting 5. =auto-completion-idle-delay= is the number of seconds to wait before suggesting
completions. The default value is 0.2 seconds. Set to =nil= to disable completions. The default value is 0.2 seconds. Set to =nil= to disable
automatic suggestions (the ~TAB~ key will still perform completion). automatic suggestions (the ~TAB~ key will still perform completion).
The default configuration of the layer is: The default configuration of the layer is:

View File

@ -15,14 +15,14 @@ Dependency installation script for [[https://github.com/syl20bnr/spacemacs/blob/
* List of installed software: * List of installed software:
1. [[http://packages.ubuntu.com/en/xenial/zeal][zeal]] - documentation browser. 1. [[http://packages.ubuntu.com/en/xenial/zeal][zeal]] - documentation browser.
2. Docsets for layers (if the are used in .spacemacs): 2. Docsets for layers (if the are used in .spacemacs):
- [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Blang/clojure/README.org][clojure]] - [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Blang/clojure/README.org][clojure]]
- [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Blang/go/README.org][go]] - [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Blang/go/README.org][go]]
- [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Blang/html/README.org][html]] - [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Blang/html/README.org][html]]
- [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Blang/emacs-lisp/README.org][emacs-lisp]] - [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Blang/emacs-lisp/README.org][emacs-lisp]]
- [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Blang/javascript/README.org][javascript]] - [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Blang/javascript/README.org][javascript]]
- [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Btools/docker/README.org][docker]] - [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Btools/docker/README.org][docker]]
- [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Blang/markdown/README.org][markdown]] - [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Blang/markdown/README.org][markdown]]
- [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Blang/python/README.org][python]] - [[https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Blang/python/README.org][python]]
* Notes: * Notes:
- You can get more docsets at [[https://kapeli.com/docset_links]] - You can get more docsets at [[https://kapeli.com/docset_links]]

View File

@ -94,7 +94,7 @@ encounters this function it will start the debugger.
evilified state otherwise you end up in emacs state and =*Debugging*= is evilified state otherwise you end up in emacs state and =*Debugging*= is
displayed in the mode line. displayed in the mode line.
5) Press ~s~ to go to next step up to the opening parenthesis of 5) Press ~s~ to go to next step up to the opening parenthesis of
=(subroutine name)=, =(subroutine name)=,
6) Press ~i~ to go into the =subroutine= where you can press ~s~ to step in 6) Press ~i~ to go into the =subroutine= where you can press ~s~ to step in
function or press ~o~ to go out of it. function or press ~o~ to go out of it.

View File

@ -36,7 +36,7 @@ richer, IDE-like capabilities. To use this layer with lsp, you must do the
following: following:
1. Add =lsp= to =dotspacemacs-configuration-layers=. 1. Add =lsp= to =dotspacemacs-configuration-layers=.
2. Install =LanguageServer.jl= by invoking =Pkg.add("LanguageServer")= in the 2. Install =LanguageServer.jl= by invoking =Pkg.add("LanguageServer")= in the
Julia REPL. Julia REPL.
3. Enable layer integration with lsp as described in section below. 3. Enable layer integration with lsp as described in section below.
=LanguageServer.jl= tends to have a very long startup time. In the worst case, =LanguageServer.jl= tends to have a very long startup time. In the worst case,

View File

@ -40,10 +40,10 @@ initialization tasks which must occur to get the completion working as it should
On any new project make sure to perform the following initialization tasks: On any new project make sure to perform the following initialization tasks:
1. Run the following 1. Run the following
#+BEGIN_SRC shell #+BEGIN_SRC shell
cd /root/of/project cd /root/of/project
touch .ac-php-conf.json touch .ac-php-conf.json
#+END_SRC #+END_SRC
2. Inside of spacemacs run: 2. Inside of spacemacs run:
= ac-php-remake-tags-all = = ac-php-remake-tags-all =

View File

@ -30,33 +30,33 @@ file.
1) Install the =ycm= server. Installation instructions can be found [[https://github.com/Valloric/ycmd#user-content-building][here]]. 1) Install the =ycm= server. Installation instructions can be found [[https://github.com/Valloric/ycmd#user-content-building][here]].
2) Set the =ycmd-server-command= variable to reflect the path to the installation: 2) Set the =ycmd-server-command= variable to reflect the path to the installation:
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(setq ycmd-server-command '("python" "/path/to/YouCompleteMe/third_party/ycmd/ycmd")) (setq ycmd-server-command '("python" "/path/to/YouCompleteMe/third_party/ycmd/ycmd"))
#+END_SRC #+END_SRC
Note that no filename expansions are done, so =~= -paths will not work out of the box. Note that no filename expansions are done, so =~= -paths will not work out of the box.
If you need expansions, you can use Emacss =file-truename= like this: If you need expansions, you can use Emacss =file-truename= like this:
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(setq ycmd-server-command (list "python" (file-truename "~/some/path"))) (setq ycmd-server-command (list "python" (file-truename "~/some/path")))
#+END_SRC #+END_SRC
3) By default, spacemacs configures ycmd for getting the compilation flags from either 3) By default, spacemacs configures ycmd for getting the compilation flags from either
a compile_commands.json or a .clang_complete file and get additionnal flags from a a compile_commands.json or a .clang_complete file and get additionnal flags from a
.ycm_extra_flags file. If you do not like this behaviour, you can write your own .ycm_extra_flags file. If you do not like this behaviour, you can write your own
[[https://github.com/Valloric/YouCompleteMe/blob/master/README.md#c-family-semantic-completion][.ycm_extra_conf.py file]]. See [[#configuration][Configuration]] for more details. [[https://github.com/Valloric/YouCompleteMe/blob/master/README.md#c-family-semantic-completion][.ycm_extra_conf.py file]]. See [[#configuration][Configuration]] for more details.
4) Whitelist the file by adding the following to =.spacemacs=: 4) Whitelist the file by adding the following to =.spacemacs=:
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
;; In this example we whitelist everything in the Develop folder ;; In this example we whitelist everything in the Develop folder
(setq ycmd-extra-conf-whitelist '("~/Develop/*")) (setq ycmd-extra-conf-whitelist '("~/Develop/*"))
#+END_SRC #+END_SRC
5) The completion is not going to work automatically until we actually force it: 5) The completion is not going to work automatically until we actually force it:
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(setq ycmd-force-semantic-completion t) (setq ycmd-force-semantic-completion t)
#+END_SRC #+END_SRC
** Other Requirements ** Other Requirements
This package requires the =auto-completion= layer in order to get actual This package requires the =auto-completion= layer in order to get actual