- Notifications
You must be signed in to change notification settings - Fork14
WolfgangMehner/bash-support
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
This repository is mainly for the use with plug-in managers.
Have a look at theScreenshot Page.
The development happens inWolfgangMehner/vim-plugins.
This is a preview version!
Notable new features:
- Call the Bash interpreter via the command-line:
:Bash <args>. You can use itto pass arguments to the script. - Run Bash in a terminal window directly inside the editor.
- The template library now has shell options and variables for BASH Version 4.4.
- The debugger integration has been move into the toolbox, and comes withextended functionality.
The terminal window relies on the new+terminal feature, which becomesavailable with a patch level of approx.8.0.1000.
Please read the release notes below.
- INSTALLATION
- RELEASE NOTES
- FILES
- ADDITIONAL TIPS
- CREDITS
Bash Support implements a Bash-IDE for Vim/gVim. It is written to considerablyspeed up writing code in a consistent style. This is done by inserting completestatements, comments, idioms, and code snippets. Syntax checking, running ascript, starting a debugger can be done with a keystroke. There are manyadditional hints and options which can improve speed and comfort when writingshell scripts.
This plug-in can be used with Vim version 7.4+ and Neovim 0.2.1+.
A system-wide installation for all users can also be done. This will havefurther effects on how the plug-in works. For a step-by-step instruction, aswell as an explanation of the other consequences, please see the help filedoc/bashsupport.txt or look up the documentation via:
:help bashsupport-system-wideThe subdirectories in the zip archivebash-support.zip mirror the directorystructure which is needed below the local installation directory$HOME/.vim/(find the value of$HOME with:echo $HOME from inside Vim).
(1.0) Save the template files in$HOME/.vim/bash-support/templates/Templatesif you have changed any of them.
(1.1) Copy the zip archivebash-support.zip to$HOME/.vim and run
unzip bash-support.zipAfterwards, these files should exist:
$HOME/.vim/autoload/mmtemplates/... $HOME/.vim/doc/... $HOME/.vim/plugin/bash-support.vim(1.2) Loading of plug-in files must be enabled. If not use
:filetype plugin onThis is the minimal content of the file$HOME/.vimrc. Create one if thereis none or use the files in$HOME/.vim/bash-support/rc as a starting point.
(1.3) Make the plug-in help accessible by typing the following command on theVim command line:
:helptags $HOME/.vim/doc/(1.4) Set at least some personal details. Use the map\ntw inside a Bash bufferor the menu entry:
Bash -> Snippets -> template setup wizardIt will help you set up the file_runtimepath_/templates/personal.templates.The file is read by all plug-ins supporting this feature to get your personaldetails. Here is the minimal personalization (my settings as an example):
SetMacro( 'AUTHOR', 'Wolfgang Mehner' ) SetMacro( 'AUTHORREF', 'wm' ) SetMacro( 'EMAIL', 'wolfgang-mehner@web.de' ) SetMacro( 'COPYRIGHT', 'Copyright (c) |YEAR|, |AUTHOR|' )Use the file$HOME/.vim/templates/bash.templates to customize or add to yourBash template library. It can also be set up via the wizard.
(Read more about the template system in the plug-in documentation.)
(1.5) Consider additional settings in the file$HOME/.vimrc. The filescustomization.vimrc andcustomization.gvimrc are replacements or extensionsfor your.vimrc and.gvimrc. You may want to use parts of them. The filesare documented.
The subdirectories in the zip archivebash-support.zip mirror the directorystructure which is needed below the local installation directory$HOME/vimfiles/ (find the value of$HOME with:echo $HOME from inside Vim).
(2.0) Save the template files in$HOME/vimfiles/bash-support/templates/Templatesif you have changed any of them.
(2.1) Copy the zip archive bash-support.zip to$HOME/vimfiles and run
unzip bash-support.zipAfterwards, these files should exist:
$HOME/vimfiles/autoload/mmtemplates/... $HOME/vimfiles/doc/... $HOME/vimfiles/plugin/bash-support.vim(2.2) Loading of plug-in files must be enabled. If not use
:filetype plugin onThis is the minimal content of the file$HOME/_vimrc. Create one if thereis none or use the files in$HOME/vimfiles/bash-support/rc as a starting point.
(2.3) Make the plug-in help accessible by typing the following command on theVim command line:
:helptags $HOME\vimfiles\doc\(2.4) Set at least some personal details. Use the map\ntw inside a Bash bufferor the menu entry:
Bash -> Snippets -> template setup wizardIt will help you set up the file_runtimepath_/templates/personal.templates.The file is read by all plug-ins supporting this feature to get your personaldetails. Here is the minimal personalization (my settings as an example):
SetMacro( 'AUTHOR', 'Wolfgang Mehner' ) SetMacro( 'AUTHORREF', 'wm' ) SetMacro( 'EMAIL', 'wolfgang-mehner@web.de' ) SetMacro( 'COPYRIGHT', 'Copyright (c) |YEAR|, |AUTHOR|' )Use the file$HOME/vimfiles/templates/bash.templates to customize or add toyour Bash template library. It can also be set up via the wizard.
(Read more about the template system in the plug-in documentation.)
(2.5) Consider additional settings in the file$HOME/_vimrc. The filescustomization.vimrc andcustomization.gvimrc are replacements or extensionsfor your_vimrc and_gvimrc. You may want to use parts of them. The filesare documented.
There are a lot of features and options which can be used and influenced:
- use of template files and macros
- using and managing personal code snippets
- bash dictionary for keyword completion
- removing the root menu
- using additional plug-ins
Actions differ for different modes. Please read the documentation:
:help bashsupportAny problems? See the TROUBLESHOOTING section at the end of the help filedoc/bashsupport.txt.
- Adapt for running under Neovim more smoothly.
- Add command
:Bash [<args>]to run the interpreter with arguments. - Add command
:BashCheck.the run the syntax checker. - Add command
:BashDirectRunto run executable scripts withoutg:BASH_Executable. - Add command
:BashOutputMethodto set the output destination for:Bash. - Add command
:BashExecutableto set the executable during runtime. - Add output method 'terminal' for running scripts in a terminal window(requires +terminal).
- The templates which are inserted into new files as file skeletons can bespecified in the templates library, via the property:
Bash::FileSkeleton::Script - Use
g:Xterm_Executable. - Use
g:Xterm_Optionsinstead ofg:BASH_XtermDefaults. The settingg:BASH_XtermDefaultsstill works for backwards compatibility. - Add configuration variables
g:BASH_Ctrl_jandg:BASH_Ctrl_dto control thecreation of theCTRL+JandCTRL+Dmaps. - Remove the definition of the maps
CTRL+F9,SHIFT+F9, andALT+F9.Add them to your filetype plug-in if you want to use them. - Integration of BashDB moved into the toolbox.
- Add shell options and variables for BASH Version 4.4 and 5.0.
- Minor corrections and improvements.
Note: The filetype plug-in has been moved, and is thus not loaded automaticallyanymore. Copy it frombash-support/rc toftplugin, or add the commands thereto your own filetype plug-in.
-> see filebash-support/doc/ChangeLog
README.md This file.autoload/mmtemplates/* The template system.doc/bashsupport.txt The help file for Bash Support.doc/templatesupport.txt The help file for the template system.plugin/bash-support.vim The Bash plugin for Vim/gVim.bash-support/codesnippets/* Some Bash code snippets as a starting point.bash-support/scripts/* Several helper scripts.bash-support/templates/Templates Bash main template file.bash-support/templates/*.templates Several dependent template files.bash-support/wordlists/bash-keywords.list A file used as dictionary for automatic word completion. This file is referenced in the file customization.vimrc.The following files and extensions are for convenience only.bash-support.vim will work without them.The settings are explained in the files themselves.
ftdetect/template.vimftplugin/template.vimsyntax/template.vim Additional files for working with templates.bash-support/doc/bash-hotkeys.pdf Reference card for the key mappings. The mappings can also be used with the non-GUI Vim, where the menus are not available.bash-support/doc/ChangeLog The change log.bash-support/rc/customization.bashrc Additional settings for use in .bashrc: set the prompt P2, P3, P4 (for debugging)bash-support/rc/customization.gvimrc Additional settings for use in .gvimrc: hot keys, mouse settings, ... The file is commented. Append it to your .gvimrc if you like.bash-support/rc/customization.vimrc Additional settings for use in .vimrc: incremental search, tabstop, hot keys, font, use of dictionaries, ... The file is commented. Append it to your .vimrc if you like.bash-support/rc/sh.vim Example filetype plug-ins for Bash: defines additional mapsbash-support/rc/*.templates Sample template files for customization. Used by the template setup wizard.(1) gvim. Toggle 'insert mode' <--> 'normal mode' with the right mouse button(see mapping in filecustomization.gvimrc).
(2) gvim. Use tear off menus and
(3) try 'Focus under mouse' as window behavior (No mouse click when the mousepointer is back from the menu entry).
(4) Use Emulate3Buttons "on" (X11) even for a 3-button mouse. Pressing left andright button simultaneously without moving your fingers is faster then movinga finger to the middle button (often a wheel).
Wolfgang Mehner (wolfgang-mehner AT web.de) for the implementation of thepowerful template system templatesupport.
This plug-in has been developed by Fritz Mehner, who maintained it until 2015.
About
Edit Bash scripts in Vim/gVim. Insert code snippets, run, check, and debug the code and look up help.
Topics
Resources
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.