Commit Graph

94 Commits

Author SHA1 Message Date
5bae67e299 lang/python: remove +pyvenv flag
The pyvenv package isn't going anywhere, it's just needed by
pipenv.el (which surprisingly doesn't declare it as a dependency).
2019-03-04 20:47:26 -05:00
eb3c569e1d Replace +lsp|init with lsp! autodef 2019-03-02 01:34:19 -05:00
8832737671 Adopt seagle0128/doom-modeline for :ui modeline
And remove obsolete :ui doom-modeline module.

Relevant to: #136, #921
2019-03-02 01:34:14 -05:00
812c834970 lang/python: fix ipython repl & change args type
+python-ipython-repl-args and +python-jupyter-repl-args are now lists,
rather than strings.
2019-02-28 04:10:35 -05:00
f5a18d3751 +python|adjust-mode-line -> +python|init-mode-line
To be consistent with other initializer hooks.
2019-02-24 21:00:46 -05:00
cb923eadcc Add basic LSP support
Still needs to be documented, but includes support for the following
languages:

+ C/C++/ObjC
+ Go
+ Java
+ Javascript
+ OCaml
+ PHP
+ Python
+ Ruby
+ Scala
+ Swift
+ HTML/CSS

Relevant to #460, #716, #1186
2019-02-21 19:13:35 -05:00
94b16cba6c Standardize REPL commands & improve SPC o r
- SPC o r now prompts for a REPL to open when none was found for the
  current buffer.
- REPL handlers must now follow the naming convention "*/open*-repl".
  e.g. +python/open-ipython-repl, +emacs-lisp/open-repl, etc.
- +eval/open-repl has been split in two:
  - +eval/open-repl-other-window
  - +eval/open-repl-same-window
2019-02-18 01:59:56 -05:00
3f195614d9 Normalize :leader/:localleader keybinds
Evil states no longer apply to them. Also removes x-alt-keysym.
2018-12-23 23:54:27 -05:00
408eecad8e lang/python: lazyload python-pytest #1026 2018-12-05 22:11:54 -05:00
4455dc8baa Extract ipython/jupyter arglist to variables
Also fixes #1022 by removing default --pylab arg from
+python/open-ipython-repl.
2018-12-05 14:31:02 -05:00
30fbb0d62f Lazy-load python-pytest 2018-12-03 23:15:40 -05:00
52f805ba62 Add some extra keybindings 2018-11-23 11:14:25 -06:00
2c0b0fac77 Keybindings are added to python-mode-map 2018-11-23 11:06:03 -06:00
ba49765358 Initial pytest 2018-11-22 12:53:08 -06:00
7e02cbb17d lang/python: add miniconda3 path 2018-11-14 22:33:18 -08:00
80e53eee5d lang/python: add homebrew miniconda3 path
For `brew cask install miniconda`
2018-11-15 00:55:54 -05:00
d21887149f Minor refactor/reformatting 2018-10-06 20:44:25 -04:00
9185da824c lang/python: remove +ipython flag
+ Replace +ipython functionality with +python/open-ipython-repl command.
+ Use python-shell-interpreter for eval handlers, repl and python
  version detection.
+ Removed various python-shell-* variables for ipython; they are already
  supported upstream.
2018-10-06 20:44:25 -04:00
7f1b526f64 Set python-shell-* vars early
To make it easier for users to overwrite them in thir config.el (without
an after! block).
2018-10-03 00:05:45 -04:00
431ea613b0 lang/python: set PIPENV_MAX_DEPTH in eval handler
Instead of changing the cwd, which chould have other reprecussions for
the code about to be executed.
2018-09-26 20:38:02 -04:00
68699c3d5b lang/python: make repl/eval handlers respect pipenv 2018-09-26 12:28:32 -04:00
b91a8f0d2f lang/python: rewrite modeline version segment
+ Add $PYENV_ROOT/shims was added to exec-path, so pyenv python version
  is picked up on.
+ Fixes out-of-date python version in the modeline of other buffers
  after switching pyenv/pyvenv/conda envs.
+ The pipenv version and regular python display have been merged.
2018-09-25 22:17:41 -04:00
5145e7e822 lang/python: tab-width = python-indent-offset #882
This fixes evil-shift-width too (which is set to tab-width by
evil-collection-python).
2018-09-13 19:15:15 -04:00
c58077810d General refactor of modules
General code and comment improvements.

Also, removed the :desc's for csv-mode because map! is currently unable
to set which-key descriptions mode-locally, and should be avoided for
anything but global keybinds. This will be fixed when General is
introduced into Doom.
2018-09-09 09:58:20 -04:00
7d3ffdff06 Remove third line in section headers
This is truly important stuff. We've saved many lives with this update.
2018-09-09 09:58:19 -04:00
45e22c7e23 add anaconda3 home path '/usr/local/anaconda3' 2018-09-09 17:18:39 +08:00
69e992e54a lang/python: minor reformatting 2018-08-12 02:46:55 +02:00
69eb2cd40d lang/python: improve pipenv support 2018-08-11 21:18:21 +02:00
7ffa3c8d8d lang/python: register ANACONDA_HOME envvar 2018-08-01 22:30:30 +02:00
e053234992 lang/python: fix anaconda ignoring conda envs 2018-08-01 22:29:51 +02:00
ad68f26477 Fix python mode-line persisting into other modes
And more polish for the python mode-line indicator.
2018-08-01 15:17:57 +02:00
65f0dcef54 lang/python: remove references to removed variable 2018-08-01 01:31:12 +02:00
90d0f334f8 lang/python: rewrite mode-line indicator (again) 2018-08-01 01:13:49 +02:00
9cf5907c48 lang/python: update modeline on version change 2018-07-31 23:21:13 +02:00
991199ee78 Fix PYENV -> PYENV_ROOT envvar typo 2018-07-31 23:16:18 +02:00
b4c8584f64 lang/python: rewrite version mode-line segment 2018-07-31 23:07:22 +02:00
d9a52e1094 Fix company/lookup settings in anaconda-mode
Applying them to python-mode means it would happen too late.
2018-07-31 19:20:58 +02:00
560d16d651 lang/python: add support for more env managers
+ Rewritten +conda support
+ Adds +pyenv and +pyvenv flags with support.
+ New +ipython flag to enable ipython REPL support
+ Added pipenv support. This is the new default, instead of pyenv, and
  isn't hidden behind a module flag because it is officially endorsed by
  python.

Addresses #736
2018-07-31 15:51:25 +02:00
90d09e6f93 Highlight-numbers on every prog-mode 2018-07-29 12:19:56 +10:00
0a577f3a0e lang/python: fix pyenv version detection #736 2018-07-06 23:56:50 +02:00
e05d7cfee0 Change flycheck initialization strategy
Initialize it globally and turn it off where needed, instead of enabling
it on demand. Also fixes void-function: flycheck-mode errors when
:feature syntax-checker is disabled. This is experimental.

Indirectly fixes #710
2018-06-22 01:49:20 +02:00
6808c46b58 💥 Change set-popup-rule! usage
Now accepts a flat plist of all its former parameters, including new
:parameters and :actions properties to increase your control over the
fate of your windows.

The old usage of set-popup-rule! is deprecated and may not work right!

The :ui popup module has also seen a major refactor to improve
efficiency and load times.

Sorry! This is the last "big" change before 2.1!
2018-06-18 02:34:16 +02:00
ec8ae0bedc Add :ui pretty-code & set-pretty-symbols! autodef
Along with defaults for C/C++, elm, elisp, js, typescript, web-mode, and
org-mode. Thanks to @ar1a for inspiration.
2018-06-16 19:32:25 +02:00
4d017ae19e Replace :yas-minor-mode with set-yas-minor-mode! 2018-06-15 18:03:50 +02:00
c0251aacee Replace :lookup with set-lookup-handlers! autodef
And update all internal references.
2018-06-15 17:27:48 +02:00
588359cc5f Replace :eval/:repl with autodef functions
+ :eval => set-eval-handler!
+ :repl => set-repl-handler!
+ Updates all internal references.
2018-06-15 16:20:20 +02:00
9f0ebe42e8 Replace :electric with set-electric-rules!
And general refactor of the emacs/electric-indent module.

Also updates (set! :electric ...) references in various :lang modules
2018-06-15 13:32:07 +02:00
98d2f1de3f Add set-env! autodef; make :env obsolete 2018-06-15 03:42:01 +02:00
d8b1e469bc Introduce autodefs to replace some settings
+ :popup -> set-popup-rule!
+ :popups -> set-popup-rules!
+ :company-backend -> set-company-backend!
+ :evil-state -> set-evil-initial-state!

I am slowly phasing out the setting system (def-setting! and set!),
starting with these.

What are autodefs? These are functions that are always defined, whether
or not their respective modules are enabled. However, when their modules
are disabled, they are replaced with macros that no-op and don't
waste time evaluating their arguments.

The old set! function will still work, for a while.
2018-06-15 03:42:01 +02:00
32a2a2b64d General, minor refactor
+ Group hooks with add-hook!
+ Sharpquote elfeed call
+ Extract elfeed buffer detector into function and ensure idempotency of
  doom-real-buffer-functions
2018-06-03 15:51:59 +02:00