aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Tham2021-10-16 13:57:41 +0000
committerGitHub2021-10-16 13:57:41 +0000
commit89707a858f593c99d44af173e9fb2c0d72b8697e (patch)
tree332900f724f508ff21a0b7b2ea7c3ff4fb206433
parent2c0468ffd16de1f835ac9c4e39692a682273fb7b (diff)
Make auto-completion a config (#853)
-rw-r--r--book/src/configuration.md1
-rw-r--r--helix-term/src/application.rs2
-rw-r--r--helix-view/src/editor.rs5
3 files changed, 6 insertions, 2 deletions
diff --git a/book/src/configuration.md b/book/src/configuration.md
index f30146dd..d47f95d9 100644
--- a/book/src/configuration.md
+++ b/book/src/configuration.md
@@ -19,6 +19,7 @@ To override global configuration parameters, create a `config.toml` file located
| `line-number` | Line number display (`absolute`, `relative`) | `absolute` |
| `smart-case` | Enable smart case regex searching (case insensitive unless pattern contains upper case characters) | `true` |
| `auto-pairs` | Enable automatic insertion of pairs to parenthese, brackets, etc. | `true` |
+| `auto-completion` | Enable automatic pop up of auto-completion. | `true` |
| `idle-timeout` | Time in milliseconds since last keypress before idle timers trigger. Used for autocompletion, set to 0 for instant. | `400` |
## LSP
diff --git a/helix-term/src/application.rs b/helix-term/src/application.rs
index b3fa79ee..0e7d0e55 100644
--- a/helix-term/src/application.rs
+++ b/helix-term/src/application.rs
@@ -238,7 +238,7 @@ impl Application {
use crate::commands::{completion, Context};
use helix_view::document::Mode;
- if doc_mut!(self.editor).mode != Mode::Insert {
+ if doc_mut!(self.editor).mode != Mode::Insert || !self.config.editor.auto_completion {
return;
}
let editor_view = self
diff --git a/helix-view/src/editor.rs b/helix-view/src/editor.rs
index d0ea6653..90e3bf47 100644
--- a/helix-view/src/editor.rs
+++ b/helix-view/src/editor.rs
@@ -47,12 +47,14 @@ pub struct Config {
pub shell: Vec<String>,
/// Line number mode.
pub line_number: LineNumber,
- /// Middle click paste support. Defaults to true
+ /// Middle click paste support. Defaults to true.
pub middle_click_paste: bool,
/// Smart case: Case insensitive searching unless pattern contains upper case characters. Defaults to true.
pub smart_case: bool,
/// Automatic insertion of pairs to parentheses, brackets, etc. Defaults to true.
pub auto_pairs: bool,
+ /// Automatic auto-completion, automatically pop up without user trigger. Defaults to true.
+ pub auto_completion: bool,
/// Time in milliseconds since last keypress before idle timers trigger. Used for autocompletion, set to 0 for instant. Defaults to 400ms.
#[serde(skip_serializing, deserialize_with = "deserialize_duration_millis")]
pub idle_timeout: Duration,
@@ -83,6 +85,7 @@ impl Default for Config {
middle_click_paste: true,
smart_case: true,
auto_pairs: true,
+ auto_completion: true,
idle_timeout: Duration::from_millis(400),
}
}