mirror of
				https://github.com/ohmyzsh/ohmyzsh.git
				synced 2024-05-11 05:55:17 +00:00 
			
		
		
		
	Clean up svn README
This commit is contained in:
		@@ -1,64 +1,67 @@
 | 
			
		||||
# `svn` plugin
 | 
			
		||||
 | 
			
		||||
This plugin adds some utility functions to display additional information regarding your current
 | 
			
		||||
svn repsitiory. See http://subversion.apache.org/ for the full svn documentation.
 | 
			
		||||
 | 
			
		||||
## Functions
 | 
			
		||||
 | 
			
		||||
| Command                | Description                             |
 | 
			
		||||
|:-----------------------|:----------------------------------------|
 | 
			
		||||
|svn_prompt_info         | prompt for some themes                  |
 | 
			
		||||
|in_svn                  | within svn directory                    |
 | 
			
		||||
|svn_get_repo_name       |                                         |
 | 
			
		||||
|svn_get_branch_name     | branch name (see caveats)              |
 | 
			
		||||
|svn_get_rev_nr          | revision number                         |
 | 
			
		||||
|svn_dirty               | changes in this subversion repo         |
 | 
			
		||||
 | 
			
		||||
## Caveats
 | 
			
		||||
 | 
			
		||||
The plugin expects the first directory to be the current branch / tag / trunk. So, it returns
 | 
			
		||||
the first path element if you don't use branches.
 | 
			
		||||
 | 
			
		||||
## Usage
 | 
			
		||||
svn repository. See http://subversion.apache.org/ for the full svn documentation.
 | 
			
		||||
 | 
			
		||||
To use it, add `svn` to your plugins array:
 | 
			
		||||
```sh
 | 
			
		||||
 | 
			
		||||
```zsh
 | 
			
		||||
plugins=(... svn)
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
### Agnoster theme git-like prompt
 | 
			
		||||
## Functions
 | 
			
		||||
 | 
			
		||||
Enable the svn plugin and add the followind lines to your ```~/.zshrc```
 | 
			
		||||
| Command               | Description                                 |
 | 
			
		||||
|:----------------------|:--------------------------------------------|
 | 
			
		||||
| `svn_prompt_info`     | Shows svn prompt in themes                  |
 | 
			
		||||
| `in_svn`              | Checks if we're in an svn repository        |
 | 
			
		||||
| `svn_get_repo_name`   | Get repository name                         |
 | 
			
		||||
| `svn_get_branch_name` | Get branch name (see [caveats](#caveats))   |
 | 
			
		||||
| `svn_get_rev_nr`      | Get revision number                         |
 | 
			
		||||
| `svn_dirty`           | Checks if there are changes in the svn repo |
 | 
			
		||||
 | 
			
		||||
```shell
 | 
			
		||||
prompt_svn() {
 | 
			
		||||
    local rev branch
 | 
			
		||||
    if in_svn; then
 | 
			
		||||
        rev=$(svn_get_rev_nr)
 | 
			
		||||
        branch=$(svn_get_branch_name)
 | 
			
		||||
        if [ `svn_dirty_choose_pwd 1 0` -eq 1 ]; then
 | 
			
		||||
            prompt_segment yellow black
 | 
			
		||||
            echo -n "$rev@$branch"
 | 
			
		||||
            echo -n "±"
 | 
			
		||||
        else
 | 
			
		||||
            prompt_segment green black
 | 
			
		||||
            echo -n "$rev@$branch"
 | 
			
		||||
## Caveats
 | 
			
		||||
 | 
			
		||||
The plugin expects the first directory to be the current branch / tag / trunk. So it returns
 | 
			
		||||
the first path element if you don't use branches.
 | 
			
		||||
 | 
			
		||||
## Usage on themes
 | 
			
		||||
 | 
			
		||||
To use this in the `agnoster` theme follow these instructions:
 | 
			
		||||
 | 
			
		||||
1. Enable the svn plugin
 | 
			
		||||
 | 
			
		||||
2. Add the following lines to your `zshrc` file:
 | 
			
		||||
 | 
			
		||||
    ```shell
 | 
			
		||||
    prompt_svn() {
 | 
			
		||||
        local rev branch
 | 
			
		||||
        if in_svn; then
 | 
			
		||||
            rev=$(svn_get_rev_nr)
 | 
			
		||||
            branch=$(svn_get_branch_name)
 | 
			
		||||
            if [[ $(svn_dirty_choose_pwd 1 0) -eq 1 ]]; then
 | 
			
		||||
                prompt_segment yellow black
 | 
			
		||||
                echo -n "$rev@$branch"
 | 
			
		||||
                echo -n "±"
 | 
			
		||||
            else
 | 
			
		||||
                prompt_segment green black
 | 
			
		||||
                echo -n "$rev@$branch"
 | 
			
		||||
            fi
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
    }
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
override the agnoster build_prompt() function:
 | 
			
		||||
3. Override the agnoster `build_prompt()` function:
 | 
			
		||||
 | 
			
		||||
```shell
 | 
			
		||||
build_prompt() {
 | 
			
		||||
    RETVAL=$?
 | 
			
		||||
    prompt_status
 | 
			
		||||
    prompt_context
 | 
			
		||||
    prompt_dir
 | 
			
		||||
    prompt_git
 | 
			
		||||
    prompt_svn
 | 
			
		||||
    prompt_end
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
    ```zsh
 | 
			
		||||
    build_prompt() {
 | 
			
		||||
        RETVAL=$?
 | 
			
		||||
        prompt_status
 | 
			
		||||
        prompt_context
 | 
			
		||||
        prompt_dir
 | 
			
		||||
        prompt_git
 | 
			
		||||
        prompt_svn
 | 
			
		||||
        prompt_end
 | 
			
		||||
    }
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user