Commit graph

10467 commits

Author SHA1 Message Date
syl20bnr
06708b2039 [ycmd] Remove ycmd layer (move to c-c++ layer) 2019-11-09 09:41:01 -05:00
syl20bnr
d536b36d15 [c-c++] C/C++ layer refactor to support multiple backends 2019-11-09 09:40:56 -05:00
syl20bnr
ab818140d0 [cmake] Remove cmake forgotten cmake config in c-c++ layer 2019-11-09 09:40:51 -05:00
syl20bnr
bb145f3e70 [c-c++] Reorganize layer variables in config.el 2019-11-09 09:40:47 -05:00
cormacc
0a39263e2d Added clangd support. Separated lsp server selection from backend.
<<Amendment 1>>
Fixed clangd executable when c-c++-lsp-executable not set

<<Amendment 2>>
Rebased. Updated DAP configuration for compatibility with upstream dap layer
changes (specifically per-mode keybindings).

<<Amendment 3>>
Fixed DAP configuration.
Correction: declare-layers -> declare-layer-dependencies

<<Amendment 4>>
...ahem...
Fixed DAP configuration (missing '/' in func name)
2019-11-09 09:40:33 -05:00
Nam Nguyen
729ad60b28 Support relative virtualenv path in .venv file for Python layer 2019-11-08 23:28:30 +01:00
emacspace
604f8aba00 documentation formatting: Fri Nov 8 17:14:20 UTC 2019 2019-11-08 17:45:36 +00:00
jaremko
9c2cb17e54 doc fixes and new tags 2019-11-08 17:09:01 +00:00
emacspace
c91779aff4 documentation formatting: Fri Nov 8 16:03:53 UTC 2019 2019-11-08 16:08:22 +00:00
jaremko
6be744b8bb fix a link in Haskell docs 2019-11-08 15:58:38 +00:00
jaremko
d39057a23a fix file path 2019-11-08 13:14:54 +00:00
duianto
d125f2abd2 Fix void counsel-find-file-map
When the ivy package is installed without counsel,
and (require 'ivy) is called, then an error message
appears: void-variable counsel-find-file-map
2019-11-08 11:23:10 +01:00
jaremko
195ba33578 fix TravisCI 2019-11-06 17:07:25 +00:00
Ag Ibragimov
08fdb02d7d [shell] Add vterm key bindings
- ~M-n~     =vterm-send-down= (next command)
- ~M-p~     =vterm-send-up=   (previous command)
- ~M-y~     =vterm-yank-pop=  (previous paste)
- ~M-/~     =vterm-send-tab=  (hippie expand)
Evil insert state:
- ~C-y~     =vterm-yank=      (paste)
Evil normal state:
- ~p~       =vterm-yank=      (paste)
- ~u~       =vterm-undo=

vterm: more keys
2019-11-06 12:01:31 +01:00
Hong Xu
5cd73edd1d Use string= instead of eq when comparing strings.
This is a follow-up of #12885, in which I used the wrong operator.
2019-11-06 10:07:50 +01:00
Hong Xu
9c613b8770 Optimize =spacemacs/counsel-search= for =ag= and =rg=
Use =counsel-ag= and =counsel-rg= when possible. They have more
optimizations, such as switching directory, the ability to turn
on and off casefold, etc. Counsel will also carry future
improvement with these two functions, and spacemacs will
automatically benefit from it.
2019-11-05 16:40:27 +01:00
duianto
7af300a225 Add visual line navigation keys, up and down
up   evil-previous-visual-line
down evil-next-visual-line
2019-11-03 22:44:27 +01:00
Miciah Masters
a55df96caa [core] Environment variable caching fixes
Fix several problems with environment variable caching.

First, if a shell printed extra output besides the command output,
spacemacs//init-spacemacs-env included the extra output in .spacemacs.env.
For example, a login shell could print a motd, which would be erroneously
included in .spacemacs.env.  To avoid this, spacemacs//init-spacemacs-env
now redirects the command output to a temporary file and then reads the
file.

Second, spacemacs//init-spacemacs-env sorted lines using the entire
"name=value" string for each line whereas the correct behavior is to sort
only on the "name" part.  To fix this, spacemacs//init-spacemacs-env now
uses sort-regexp-fields with an appropriate regexp to match the "name" part
and ignore the "value" part.

Third, although load-env-vars-set-env added all PATH settings in
.spacemacs.env to exec-path, it set PATH to the first PATH setting in
.spacemacs.env.  Now load-env-vars-set-env sets PATH from exec-path so that
it will reflect that combined value.

Fourth, load-env-vars-set-env set exec-path and PATH without consideration
to the operating system's directory separator.  Now load-env-vars-set-env
converts backslashes to forward slashes when adding path entries to
exec-path and converts forward slashes to backslashes when setting PATH on
platforms that use backslashes.

Fifth, load-env-vars-set-env now normalizes exec-path by deleting trailing
slashes from path entries, converting drive letters in path entries to
lower-case, and deleting duplicate path entries.

Sixth, Spacemacs no longer uses exec-path-from-shell, but a changelog entry
said that it did.  This commit corrects the changelog entry, deletes
another outdated entry, and merges two entries that covered the same
functionality.

Finally, this commit corrects several typos and tries to improve wording in
several docstrings, messages, and comments.

* CHANGELOG.develop: Delete mention of exec-path-from-shell, which
Spacemacs no longer uses by default.  Delete mention of
dotspacemacs-import-env-vars-from-shell and
dotspacemacs-import-env-vars-shell-file-name, which no longer exist.
Merge entries about synchronizing environment variables.
* core/core-env.el (spacemacs-ignored-environment-variables): Fix typos and
mention that the strings are regexps that are matched against the names of
environment variables.
(spacemacs//init-spacemacs-env): Use a temporary file rather than standard
output in order to avoid getting motd and other noise.  Sort lines using
only environment variables' names, not their values.  Better describe the
behavior with respect to spacemacs-ignored-environment-variables, duplicate
settings, and PATH.  Try to make wording clearer.
(spacemacs/edit-env): Fix typos in the docstring.
* core/libs/load-env-vars.el (load-env-vars-set-env): Fix typos in the
docstring.  Delete trailing slashes from path entries in exec-path, convert
drive letters to lower-case, delete duplicate path entries, and convert
backslashes to forward slashes when setting exec-path.  Set PATH from
exec-path, converting forward slashes to backslashes on platforms that use
backslashes.
2019-11-03 22:25:05 +01:00
duianto
38752beffa Descriptive rename function file variables
problem:
the variable names: `dir`, `name`, and `filename` leads to confusion if they are
the old or new names

solution:
add the prefix `old-` to match `new-`,
use (`old-` `new-`) + `short-name` for just the `file.ext` (the `short-` idea
came from the `spacemacs/rename-file` function that's defined above this one),
and `old-full-path` instead of `old-filename` makes it clear that it's not just
the files name and extension.
2019-11-03 22:05:14 +01:00
duianto
4c728f041a Update file renaming, handle same new and old name
problem:
renaming a file to it's current name, results in the message:
"File 'current-name' successfully renamed to 'current-name'"

solution:
when the new and old names are the same, show a rename failed message, and call
the rename function again
2019-11-03 21:03:10 +01:00
duianto
8fbdd61e1e Update renaming, move and/or rename messages
problem:
the rename command shows the same message:
"File 'old-file-name' successfully renamed to 'new-file-name'"
(without the directory path) for all three file operations:
move, rename and both move & rename

solution:
show messages that fit the rename operation,
and align the from and to path/file names,
to make it easier to see what changed.

And use the same message format when renaming a buffer.
2019-11-03 20:40:56 +01:00
smile13241324
5fdb89d61d Optimise spacemacs/last-error further
Noticed that I have used if instead of when
and added an obsolete progn.
2019-11-03 20:35:49 +01:00
smile13241324
e74fc70de8 Revise spacemacs/last-error function and change key binding 2019-11-03 20:14:10 +01:00
Benoit Coste
93ac5203b4 Add function 'spacemacs/last-error
Sometimes it is useful to go directly to the last error message in the buffer.
This function recursively calls 'spacemacs/next-error until the last error is
reached.
The binding "SPC e l" is associated with it
2019-11-03 20:14:10 +01:00
Ivan Yonchovski
06cf8e3842 lsp layer must depend on yasnippet
- if this line is missing yasnippets might not be loaded because lsp-mode might
load the snippets before the auto-completion layer kick in.
2019-11-02 13:39:48 +01:00
duianto
b837c1d397 [ivy] remove boundp check
Thanks yuhan0 for the suggestion
https://github.com/syl20bnr/spacemacs/pull/12865/files#r340909922
2019-10-31 10:55:23 +01:00
jpathy
72e49c6f2b No need for hook. It gives error as 'ediprolog is not defined. 2019-10-31 10:41:58 +01:00
duianto
7c572fccdc Update .travis.yml, use Emacs from latest Ubuntu 2019-10-31 07:10:43 +01:00
duianto
f6cdec168e Update .travis.yml libgnutls 3rd attempt 2019-10-30 22:20:35 +01:00
Hong Xu
383da46e38 Keep ~C-h~ binding in =counsel-find-file-map= only for hjkl navigation
It has already been bound to <kbd>C-backspace</kbd> and
<kbd>C-delete</kbd>. Such an
additional binding is redundant (if hjkl navigation is not used) and
makes the original <kbd>C-h</kbd> binding
(help) unavailable.
2019-10-30 18:18:54 +01:00
duianto
f19d57eb57 [doc] add visual line nav keys, startup snippet
documentation.org
- added visual line navigation (w/w/o) globally keys and unicode/ascii symbol

faq.org
- updated snippet for enabling visual line navigation globally on startup
2019-10-30 10:00:05 +01:00
Matt Kramer
e4c8cef412 Add toggle visual-line-navigation-globally 2019-10-29 18:19:05 +01:00
duianto
5bcc96e9a9 [helm] Add helm-ls-git-ls to SPC g f f
The HELM Lsgit buffer has three sections:
- Git status (files: modified, deleted, etc.)
- Buffers in git project
- Git files
2019-10-28 21:26:04 +01:00
duianto
57721d8e76 Update changelog.develop git section 2019-10-27 22:58:31 +01:00
duianto
0ca2d8558e Update changelog.develop 2019-10-27 13:00:42 +01:00
Carlos Ibáñez
0b0203e03f Fix git-grep on point 2019-10-27 12:59:06 +01:00
Carlos Ibáñez
cb99bf9f39 Fix broken ivy-occur 2019-10-27 12:59:06 +01:00
Hong Xu
cff6b47e6f Set counsel-find-file-at-point to t by default.
This enables better auto completion of =counsel-find-file=.
2019-10-27 05:06:02 +01:00
Muneeb Shaikh
11b258c71c remove leftover git conflict marker 2019-10-25 23:41:37 +02:00
duianto
5fcd6e31eb [julia] Update readme.org
Removed org verbatim emphasis around link descriptions.

Moved up a paragraph before the julia-mode-enable-lsp code snippet,
because it ended with "then install this layer with:".

Removed the link from the same paragraph, it linked to it's own section.
2019-10-24 21:35:42 +02:00
Guido Kraemer
4e57ebe42b [julia] Load lsp-julia from melpa, etc.
Loaded lsp-julia from melpa

And fixed #12852
spacemacs/go-setup-backend was incorrectly added to the hook:
julia-mode-local-vars-hook
The correct function is now added: spacemacs/julia-setup-lsp

correct a tick
2019-10-24 20:36:01 +02:00
Didier A
58dcd6320b [clojure] Added support for joker linter and having mutliple active linters
The variable clojure-enable-linters can now be set to a list of linters:

'(clj-kondo joker)
  or
'(joker squiggly)
  or any other combination of the available linters.

In which case, all linters in the list will be active if they are
available to be. In that flycheck is configured so that each linter
in the list has as next-checker the next linter in the list.

The variable can also now be set to:

'joker

If only the newly added joker linter should be used.

This will pull down flycheck-joker and add Joker as a checker for
Clojure modes.

--

Implementation Details

The way it works is that for each Clojure linting mode, clj, cljc,
cljs and edn, a primary linter is chosen based on the order the
user specifies in clojure-enable-linters which support that mode.
It is made the primary linter for flycheck to use by being promoted
to the front of the flycheck-checkers list. All other linters specified
by the user which the mode also supports get added to it as a
next-checker.

Tested with clj-kondo, joker and squiggly. The only issue I saw was that
the way flycheck-clojure works, and the way I currently have setup the
logic for multiple checkers mean that we can't add to a mode multiple
checkers for the same linter. flycheck-clojure has eastwood, kibit and
core.typed. If you have it configured to use eastwood linter, then it
will all work, as eastwood gets added as the next-checker. But if you
have it disabled in flycheck-clojure, there won't be any
flycheck-clojure linters to activate. I'm not sure as of now how to best
support that. Ideally, we would not clubber linters into a single packge
like that, and so the layer would have instead of squiggly: eastwood,
kibit, core.typed. But that's not how flycheck-clojure works. Future
commit might be able to do something smarter about this.
2019-10-20 00:23:58 +02:00
duianto
1de8157a5c Unfold org headings from helm-ag and magit
Unfold org headings to a target line when opening a .org file from:
helm-ag, magit diff or blame buffers
2019-10-19 23:47:45 +02:00
Matthew Leach
ae5ed6afda [gitignore] ignore bbdb file
Ignore the BBDB file as by default it is stored in ~/.emacs.d.
2019-10-19 23:37:49 +02:00
duianto
a7d45a5221 [ivy] Fix spacemacs/layouts-ts-close-other
Problem: It called: (spacemacs/helm-persp-close)
Solution: Call (spacemacs/ivy-spacemacs-layout-close-other) when ivy is used.
2019-10-19 23:20:55 +02:00
duianto
86c4ca2133 [ivy] Add counsel colors and faces key bindings
SPC C e calls counsel-colors-emacs
SPC C f calls counsel-faces
SPC C w calls counsel-colors-web
2019-10-19 23:13:35 +02:00
duianto
6472dfe3c2 [auto-completion] List feature pkg company-quickhelp
The company-quickhelp package wasn't mentioned in the auto-completion readme.

And the variable name auto-completion-enable-help-tooltip that enables the
package doesn't mention the package name either (which is fine).

This just makes it somewhat easier to see/find that the company-quickhelp
package is related to tooltips and that it's part of the auto-completion layer.
2019-10-19 23:03:05 +02:00
br3athein
e528c6b038 shell: Set initial shell state better 2019-10-19 22:58:22 +02:00
smile13241324
bbe3e5bde1 [shell] Revise documentation 2019-10-19 22:34:49 +02:00
br3athein
72844d2ae9 shell: Tell vterm to respect shell-default-term-shell setting
Effectively, this forces `vterm` to spawn a shell set in a
`shell-default-term-shell` variable i/o default "/bin/bash" - just like
other shells from `shell-pop` do.
2019-10-19 22:21:05 +02:00