some more cli rennasance work.
This commit is contained in:
		
							parent
							
								
									849473f9b4
								
							
						
					
					
						commit
						fb44be7ee5
					
				
					 4 changed files with 27 additions and 1 deletions
				
			
		
							
								
								
									
										
											BIN
										
									
								
								content/posts/clirenaissance/helix_command_autocomplete.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								content/posts/clirenaissance/helix_command_autocomplete.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 212 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								content/posts/clirenaissance/helix_contextual_hint.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								content/posts/clirenaissance/helix_contextual_hint.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 217 KiB  | 
| 
						 | 
					@ -214,6 +214,32 @@ but its an extremely usable IDE out of the box thanks to having all of its featu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### Concise and discoverable documentation
 | 
					### Concise and discoverable documentation
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In my nvim config, I use [which-key](https://github.com/folke/which-key.nvim),
 | 
				
			||||||
 | 
					a plugin that displays available keybindings as you type.
 | 
				
			||||||
 | 
					Ive been using vim for almost a decade, including a long time without which-key,
 | 
				
			||||||
 | 
					so its not like I never learned the keybindings, but I still find which-key useful.
 | 
				
			||||||
 | 
					Why is that, you may ask?
 | 
				
			||||||
 | 
					Well, because even though I use (n)vim every day, I dont use all the keybindings every day.
 | 
				
			||||||
 | 
					I might go months between using, for example, `dap` (delete current paragraph), or `C-w x` (swap current window for next).
 | 
				
			||||||
 | 
					Naturally, when you go months without using certain parts of a program, you tend to forget they exist.
 | 
				
			||||||
 | 
					Which-key solves that handily, by offering quick, non-intrusive reminders of what is availible.
 | 
				
			||||||
 | 
					Heres what my which-key config looks like:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Now, which-key and its like have been around for a while,
 | 
				
			||||||
 | 
					but other TUI programs have integreated contextual hints without the need for a plugin.
 | 
				
			||||||
 | 
					The two that I am aware of are zellij and helix.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Helix both has autocompletion for its built in command line and a contextual hint that appears when you press the first key in a multi key combo.
 | 
				
			||||||
 | 
					This drastically helps both new and experienced users learn and remember keybinds without making the editor any less powerful.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Zellij has a bottom bar displaying keybindings available in the current mode.
 | 
				
			||||||
 | 
					This has proven invaluable for me, as I dont use a terminal multiplexer much
 | 
				
			||||||
 | 
					(On GUI systems, I use the window manager for managing multiple terminals), and as such tend to forget the keybinds.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<!-- look at zellij and helix and their built in keymap cheatsheets-->
 | 
					<!-- look at zellij and helix and their built in keymap cheatsheets-->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### Common usecases should be easy
 | 
					### Common usecases should be easy
 | 
				
			||||||
| 
						 | 
					@ -249,7 +275,7 @@ As such, it includes features such as implicit rules
 | 
				
			||||||
(if a file called `foo.o` is needed and there is no explicit rule is there, the C compiler will be invoked on the file `foo.c`
 | 
					(if a file called `foo.o` is needed and there is no explicit rule is there, the C compiler will be invoked on the file `foo.c`
 | 
				
			||||||
(there are similar rules for C++ and linking))
 | 
					(there are similar rules for C++ and linking))
 | 
				
			||||||
and file modification time laziness
 | 
					and file modification time laziness
 | 
				
			||||||
(fantastic as a build system, needs liberal sprinkling of `.PHONY` rules when used as a task runner).
 | 
					(fantastic for a build system, needs liberal sprinkling of `.PHONY` rules when used as a task runner).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
These features are *good* features when make is being used as a build system,
 | 
					These features are *good* features when make is being used as a build system,
 | 
				
			||||||
but another major use of make that has emerged has been as a way to run common tasks.
 | 
					but another major use of make that has emerged has been as a way to run common tasks.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										
											BIN
										
									
								
								content/posts/clirenaissance/nvim_which_key.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								content/posts/clirenaissance/nvim_which_key.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 217 KiB  | 
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue