on master help sign in
Make auto-completion a config (#853)
89707a8Ivan Tham
book/src/configuration.md+1
@@ -19,6 +19,7 @@ To override global configuration parameters, create a `config.toml` file located
19| `line-number` | Line number display (`absolute`, `relative`) | `absolute` |
19| `line-number` | Line number display (`absolute`, `relative`) | `absolute` |
20| `smart-case` | Enable smart case regex searching (case insensitive unless pattern contains upper case characters) | `true` |
20| `smart-case` | Enable smart case regex searching (case insensitive unless pattern contains upper case characters) | `true` |
21| `auto-pairs` | Enable automatic insertion of pairs to parenthese, brackets, etc. | `true` |
21| `auto-pairs` | Enable automatic insertion of pairs to parenthese, brackets, etc. | `true` |
22+| `auto-completion` | Enable automatic pop up of auto-completion. | `true` |
22| `idle-timeout` | Time in milliseconds since last keypress before idle timers trigger. Used for autocompletion, set to 0 for instant. | `400` |
23| `idle-timeout` | Time in milliseconds since last keypress before idle timers trigger. Used for autocompletion, set to 0 for instant. | `400` |
23
24
24## LSP
25## LSP
helix-term/src/application.rs+1−1
@@ -238,7 +238,7 @@ impl Application {
238 use crate::commands::{completion, Context};
238 use crate::commands::{completion, Context};
239 use helix_view::document::Mode;
239 use helix_view::document::Mode;
240
240
241− if doc_mut!(self.editor).mode != Mode::Insert {
241+ if doc_mut!(self.editor).mode != Mode::Insert || !self.config.editor.auto_completion {
242 return;
242 return;
243 }
243 }
244 let editor_view = self
244 let editor_view = self
helix-view/src/editor.rs+4−1
@@ -47,12 +47,14 @@ pub struct Config {
47 pub shell: Vec<String>,
47 pub shell: Vec<String>,
48 /// Line number mode.
48 /// Line number mode.
49 pub line_number: LineNumber,
49 pub line_number: LineNumber,
50− /// Middle click paste support. Defaults to true
50+ /// Middle click paste support. Defaults to true.
51 pub middle_click_paste: bool,
51 pub middle_click_paste: bool,
52 /// Smart case: Case insensitive searching unless pattern contains upper case characters. Defaults to true.
52 /// Smart case: Case insensitive searching unless pattern contains upper case characters. Defaults to true.
53 pub smart_case: bool,
53 pub smart_case: bool,
54 /// Automatic insertion of pairs to parentheses, brackets, etc. Defaults to true.
54 /// Automatic insertion of pairs to parentheses, brackets, etc. Defaults to true.
55 pub auto_pairs: bool,
55 pub auto_pairs: bool,
56+ /// Automatic auto-completion, automatically pop up without user trigger. Defaults to true.
57+ pub auto_completion: bool,
56 /// Time in milliseconds since last keypress before idle timers trigger. Used for autocompletion, set to 0 for instant. Defaults to 400ms.
58 /// Time in milliseconds since last keypress before idle timers trigger. Used for autocompletion, set to 0 for instant. Defaults to 400ms.
57 #[serde(skip_serializing, deserialize_with = "deserialize_duration_millis")]
59 #[serde(skip_serializing, deserialize_with = "deserialize_duration_millis")]
58 pub idle_timeout: Duration,
60 pub idle_timeout: Duration,
@@ -83,6 +85,7 @@ impl Default for Config {
83 middle_click_paste: true,
85 middle_click_paste: true,
84 smart_case: true,
86 smart_case: true,
85 auto_pairs: true,
87 auto_pairs: true,
88+ auto_completion: true,
86 idle_timeout: Duration::from_millis(400),
89 idle_timeout: Duration::from_millis(400),
87 }
90 }
88 }
91 }