# Using org-roam with ido,

**URL:** <https://org-roam.discourse.group/t/using-org-roam-with-ido/900>\
**Category:** How To\
**Created:** [October 28, 2020, 1:01pm UTC](https://org-roam.discourse.group/t/using-org-roam-with-ido/900 "2020-10-28T13:01:50Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![plato](https://avatars.discourse-cdn.com/v4/letter/p/b9bd4f/32.png) [@plato](https://org-roam.discourse.group/u/plato)\
**Post date:** [October 28, 2020, 1:01pm UTC](https://org-roam.discourse.group/t/using-org-roam-with-ido/900/1 "2020-10-28T13:01:50Z")

</div>

I’m using org-roam with `(setq org-roam-completion-system 'ido)`. This works well for finding existing notes via `org-roam-find-file`, but when I want to insert a new entry, it doesn’t let me input spaces in the title, just hyphens. How can I fix this? Sorry if it’s really an ido problem, but I just thought I’d ask here.

---

<div class="post-metadata">

**Author:** ![nobiot](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/nobiot/32/159_2.png) [@nobiot](https://org-roam.discourse.group/u/nobiot)\
**Post date:** [October 29, 2020, 8:59am UTC](https://org-roam.discourse.group/t/using-org-roam-with-ido/900/2 "2020-10-29T08:59:38Z")

</div>

Does `M-SPC` insert a space for you?

---

<div class="post-metadata">

**Author:** ![plato](https://avatars.discourse-cdn.com/v4/letter/p/b9bd4f/32.png) [@plato](https://org-roam.discourse.group/u/plato)\
**Post date:** [October 29, 2020, 10:24am UTC](https://org-roam.discourse.group/t/using-org-roam-with-ido/900/3 "2020-10-29T10:24:13Z")

</div>

Doesn’t seem to work.

---

<div class="post-metadata">

**Author:** ![nobiot](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/nobiot/32/159_2.png) [@nobiot](https://org-roam.discourse.group/u/nobiot)\
**Post date:** [October 29, 2020, 12:05pm UTC](https://org-roam.discourse.group/t/using-org-roam-with-ido/900/4 "2020-10-29T12:05:45Z")

</div>

Wow. It is a difficult one…  
It seems that `C-q` followed by a `space` works on my end.  
But mine does not insert a hyphen with the space key – it tries to do completion, so maybe it’s a bit different set up from yours.

---

<div class="post-metadata">

**Author:** ![plato](https://avatars.discourse-cdn.com/v4/letter/p/b9bd4f/32.png) [@plato](https://org-roam.discourse.group/u/plato)\
**Post date:** [October 29, 2020, 3:20pm UTC](https://org-roam.discourse.group/t/using-org-roam-with-ido/900/5 "2020-10-29T15:20:55Z")

</div>

Ah, thanks for the `C-q` hint, I’ll just use that for now.

---

<div class="post-metadata">

**Author:** ![nobiot](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/nobiot/32/159_2.png) [@nobiot](https://org-roam.discourse.group/u/nobiot)\
**Post date:** [October 29, 2020, 5:07pm UTC](https://org-roam.discourse.group/t/using-org-roam-with-ido/900/6 "2020-10-29T17:07:29Z")

</div>

It’s clunky, isn’t it.

If there is no strong reason why you prefer to stick to Ido, Ivy or Helm would quickly resolve this problem (I use Ivy and it is painless).

If you prefer to stick to a built-in completion framework, I really like the way [Prot uses Icomplete](https://protesilaos.com/codelog/2020-02-26-emacs-icomplete/). I might follow his footsteps myself.

---

<div class="post-metadata">

**Author:** ![plato](https://avatars.discourse-cdn.com/v4/letter/p/b9bd4f/32.png) [@plato](https://org-roam.discourse.group/u/plato)\
**Post date:** [October 29, 2020, 5:20pm UTC](https://org-roam.discourse.group/t/using-org-roam-with-ido/900/7 "2020-10-29T17:20:27Z")

</div>

I actually tried all the completion systems out there, and settled on ido. It’s simply the fastest for me. But thanks for the help and the suggestions!

---

<div class="post-metadata">

**Author:** ![nobiot](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/nobiot/32/159_2.png) [@nobiot](https://org-roam.discourse.group/u/nobiot)\
**Post date:** [October 31, 2020, 11:06pm UTC](https://org-roam.discourse.group/t/using-org-roam-with-ido/900/8 "2020-10-31T23:06:17Z")

</div>

Hi @plato,

FYI. I was just browsing the source code (for something else, and remembered this exchange).

[Source code of Ido](https://github.com/emacs-mirror/emacs/blob/5d9e456c3ed3dcefe6bf48e24a1a8f275fc887cb/lisp/ido.el#L930) tells me that `SPC` is bound to `ido-complete-space`.

The following should do the trick. I tried the second option; it worked on my machine; no reason why the first one would not work, as it is how Ido itself does it.

```auto
(define-key ido-common-completion-map " " 'self-insert-command)
or
(define-key ido-common-completion-map (kbd "SPC") 'self-insert-command)

```
