The plugin installs into the relevant directory of the .vim/
folder and creates the following file structure:
vimstat/
├── data
│ ├── git_day_commit.txt
│ └── git_hash.txt
├── plugin
│ └── vimstat.vim
├── pom.xml
├── README.md
├── src
│ ├── main
│ │ └── java
│ │ └── com
│ │ └── vimstat
│ │ ├── Colors.java
│ │ ├── GitStats.java
│ │ ├── Main.java
│ │ ├── Stats.java
│ │ └── TimeStats.java
│ └── test
│ └── java
│ └── com
│ └── vimstat
│ ├── ColorsTest.java
│ ├── GitStatsTest.java
│ └── TimeStatsTest.java
└── target
├── classes
│ └── com
│ └── vimstat
│ ├── Colors.class
│ ├── GitStats.class
│ ├── Main.class
│ ├── Stats.class
│ └── TimeStats.class
├── test-classes
│ └── com
│ └── vimstat
│ ├── ColorsTest.class
│ ├── GitStatsTest.class
│ └── TimeStatsTest.class
└── vimstat-0.8.35.jar
Copy the plugin to the .vim/ folder:
cp -r vimstat/ ~/.vim/pack/my-plugins/start/
Reload Vim or run the command:
:source ~/.vim/pack/my-plugins/start/vimstat/plugin/vimstat.vim
To uninstall the plugin, delete its folder:
rm -r ~/.vim/pack/my-plugins/start/vimstat/
Use Vim to edit the file:
After closing Vim, you will see:
=======================================
Vim stats:
---------------------------------------
- today: 0 h 23 min 31 sec
- average: 0 h 37 min 10 sec
- today: 1 commits 100++ 105--
- average: 0 commits 23++ 10--
=======================================
Java installed
Vim installed
Maven installed
Vim 7.0 and above
Java 8 and above
Maven 3 and above
classDiagram
class Stats {
- pathToCounter: String
- ERROR: String
- LOGGER: Logger
+ Stats(pathToCounter: String)
+ write(count: Long )
+ readCount() long
+ getFileDate(pathToFile: String) LocalDate
+ isFileExists(pathToFile: String) boolean
+ createFiles()
}
class GitStats {
- pathToHash: String
+ GitStats(pathToHash: String, pathToCounter: String)
+ getLastCommitHash() String
+ write(hash: String)
+ readHash() String
+ getLastCommitLines(command: String) long
+ createFiles()
}
class TimeStats {
+ TimeStats(pathToCounter: String)
+ getSessionTime(): long
+ deleteFile()
}
Stats <|-- GitStats
Stats <|-- TimeStats
Loading
classDiagram
class vimstat.vim {
}
class Main {
}
class enum Colors {
}
class GitStats {
}
class git_hash.txt {
}
class git_day_commit.txt {
}
class git_day_added_lines.txt {
}
class git_day_deleted_lines.txt {
}
class git_average_commit.txt {
}
class git_average_added_lines.txt {
}
class git_average_deleted_lines.txt {
}
class TimeStats {
}
class time_session.txt {
}
class time_day.txt {
}
class time_month.txt {
}
class time_yesterday.txt {
}
vimstat.vim --|> Main : calls
Main --|> GitStats : calls
Main --|> TimeStats : calls
enum Colors -- Main : use
enum Colors -- GitStats : use
enum Colors -- TimeStats : use
GitStats --|> git_hash.txt : writes / reads
GitStats --|> git_day_commit.txt : writes / reads
GitStats --|> git_day_added_lines.txt : writes / reads
GitStats --|> git_day_deleted_lines.txt : writes / reads
GitStats --|> git_average_commit.txt : writes / reads
GitStats --|> git_average_added_lines.txt : writes / reads
GitStats --|> git_average_deleted_lines.txt : writes / reads
TimeStats --|> time_session.txt : writes / reads
TimeStats --|> time_day.txt : writes / reads
TimeStats --|> time_month.txt : writes / reads
TimeStats --|> time_yesterday.txt : writes / reads
Loading
Плагин устанавливается в соответствующую директорию папки .vim/
и создает следующую структуру файлов:
vimstat/
├── data
│ ├── git_day_commit.txt
│ └── git_hash.txt
├── plugin
│ └── vimstat.vim
├── pom.xml
├── README.md
├── src
│ ├── main
│ │ └── java
│ │ └── com
│ │ └── vimstat
│ │ ├── Colors.java
│ │ ├── GitStats.java
│ │ ├── Main.java
│ │ ├── Stats.java
│ │ └── TimeStats.java
│ └── test
│ └── java
│ └── com
│ └── vimstat
│ ├── ColorsTest.java
│ ├── GitStatsTest.java
│ └── TimeStatsTest.java
└── target
├── classes
│ └── com
│ └── vimstat
│ ├── Colors.class
│ ├── GitStats.class
│ ├── Main.class
│ ├── Stats.class
│ └── TimeStats.class
├── test-classes
│ └── com
│ └── vimstat
│ ├── ColorsTest.class
│ ├── GitStatsTest.class
│ └── TimeStatsTest.class
└── vimstat-0.8.35.jar
Соберите плагин с помощью maven:
Скопируйте плагин в папку .vim/:
cp -r vimstat/ ~/.vim/pack/my-plugins/start/
Перезагрузите Vim или выполните команду:
:source ~/.vim/pack/my-plugins/start/vimstat/plugin/vimstat.vim
Чтобы удалить плагин, удалите его папку:
rm -r ~/.vim/pack/my-plugins/start/vimstat/
Воспользуйтесь Vim для редактирования файла:
После закрытия Vim, вы увидите:
=======================================
Vim stats:
---------------------------------------
- today: 0 h 23 min 31 sec
- average: 0 h 37 min 10 sec
- today: 1 commits 100++ 105--
- average: 0 commits 23++ 10--
=======================================
Установленная Java
Установленный Vim
Установленный Maven
Vim 7.0 и выше
Java 8 и выше
Maven 3 и выше
classDiagram
class Stats {
- pathToCounter: String
- ERROR: String
- LOGGER: Logger
+ Stats(pathToCounter: String)
+ write(count: Long )
+ readCount() long
+ getFileDate(pathToFile: String) LocalDate
+ isFileExists(pathToFile: String) boolean
+ createFiles()
}
class GitStats {
- pathToHash: String
+ GitStats(pathToHash: String, pathToCounter: String)
+ getLastCommitHash() String
+ write(hash: String)
+ readHash() String
+ getLastCommitLines(command: String) long
+ createFiles()
}
class TimeStats {
+ TimeStats(pathToCounter: String)
+ getSessionTime(): long
+ deleteFile()
}
Stats <|-- GitStats
Stats <|-- TimeStats
Loading
classDiagram
class vimstat.vim {
}
class Main {
}
class enum Colors {
}
class GitStats {
}
class git_hash.txt {
}
class git_day_commit.txt {
}
class git_day_added_lines.txt {
}
class git_day_deleted_lines.txt {
}
class git_average_commit.txt {
}
class git_average_added_lines.txt {
}
class git_average_deleted_lines.txt {
}
class TimeStats {
}
class time_session.txt {
}
class time_day.txt {
}
class time_month.txt {
}
class time_yesterday.txt {
}
vimstat.vim --|> Main : calls
Main --|> GitStats : calls
Main --|> TimeStats : calls
enum Colors -- Main : use
enum Colors -- GitStats : use
enum Colors -- TimeStats : use
GitStats --|> git_hash.txt : writes / reads
GitStats --|> git_day_commit.txt : writes / reads
GitStats --|> git_day_added_lines.txt : writes / reads
GitStats --|> git_day_deleted_lines.txt : writes / reads
GitStats --|> git_average_commit.txt : writes / reads
GitStats --|> git_average_added_lines.txt : writes / reads
GitStats --|> git_average_deleted_lines.txt : writes / reads
TimeStats --|> time_session.txt : writes / reads
TimeStats --|> time_day.txt : writes / reads
TimeStats --|> time_month.txt : writes / reads
TimeStats --|> time_yesterday.txt : writes / reads
Loading