This article will describe using sh-script package which provides major mode for shell script. This package is built-in emacs.
Table of Contents
1 Run sh-script
Open *.sh file or run M-x sh-mode.
sh-basic-offset and sh-indentation are tab width. sh-shell-file is default of shebang. If not setting sh-shell-file, SHELL variable will be default.
(setq sh-basic-offset 2) (setq sh-indentation 2) (setq sh-shell-file "/bin/sh")
3 Key bindings
Key bindings helps to run and to input syntax. In case of pressing C-c C-w, while statement will be inputed.
condition: [ ]
Key bindings for running is as below.
|C-c :||Add shebang and run "chmod a+x" to file"|
|C-c x||Run shell script|
|C-M-x||RUn shell script to selected region|
Selected region is done by C-space / C-Shift-space which is used for copy.
Key bindings for syntax is as below.
|C-c C-w||while statement|
|C-c C-i||if statement|
|C-c C-c||case statement|
|C-c C-f||for statement|
|C-c +||`expr $v + 1`|
3.3 Temporally variable
Key bindings for temporally variable is as below. This temporally variable will be removed with trap when shell script is over.
|C-c C-t||Create temporally variable with mktemp and trap|