aboutsummaryrefslogtreecommitdiff
path: root/emacs/init.org
diff options
context:
space:
mode:
authorMiquel Sabaté Solà <msabate@suse.com>2017-01-28 17:30:40 +0100
committerMiquel Sabaté Solà <msabate@suse.com>2017-01-28 17:30:40 +0100
commit65da6656c8eb76efd70df79669c67c755a0fe430 (patch)
tree7c87aee477cc235691565135e101781ab1b0e31c /emacs/init.org
parent821dd60a60ae3f5654be037de38a4697977a7b08 (diff)
downloaddotfiles-65da6656c8eb76efd70df79669c67c755a0fe430.tar.gz
dotfiles-65da6656c8eb76efd70df79669c67c755a0fe430.zip
emacs: use C-p for ERC too
Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
Diffstat (limited to 'emacs/init.org')
-rw-r--r--emacs/init.org32
1 files changed, 26 insertions, 6 deletions
diff --git a/emacs/init.org b/emacs/init.org
index 8e70291..9392a95 100644
--- a/emacs/init.org
+++ b/emacs/init.org
@@ -477,18 +477,38 @@ Finally, I've added a couple of bindings in evil mode. First of all, I want
@@html:<kbd>C-p</kbd>@@ to use the proper function for finding files.
#+BEGIN_SRC elisp
- (defun mssola-find-file ()
- "Call the proper Helm function for finding files."
+(defun erc-helm-buffer-list ()
+ "Returns a list with the ERC buffers."
+ (mapcar 'buffer-name (erc-buffer-list)))
- (interactive)
+(setq helm-source-erc-channel-list
+ '((name . "ERC Channels")
+ (candidates . erc-helm-buffer-list)
+ (action . helm-switch-to-buffer)))
+
+(defun erc-helm-switch-buffer ()
+ "Use helm to select an active ERC buffer. Replaces erc-iswitchb, which
+doesn't work for me."
+
+ (interactive)
+
+ (helm :sources '(helm-source-erc-channel-list)
+ :buffer "*helm-erc-channels*"))
+(defun mssola-find-file ()
+ "Call the proper Helm function for finding files."
+
+ (interactive)
+
+ (if (string= major-mode "erc-mode")
+ (erc-helm-switch-buffer)
(condition-case nil
(helm-projectile-find-file)
(error
- (helm-find-files nil))))
+ (helm-find-files nil)))))
- (with-eval-after-load 'evil
- (define-key evil-normal-state-map (kbd "C-p") 'mssola-find-file))
+(with-eval-after-load 'evil
+ (define-key evil-normal-state-map (kbd "C-p") 'mssola-find-file))
#+END_SRC
Similarly, =helm-ag= has two functions for applying =ag= on the project. I'm