shione/nichijou/packages/vim.scm
Renken 024b826bf8
rename repository to nichijou
I figured this repository can hold both my packages definitions and
their configuration.
2022-08-30 00:36:18 +02:00

250 lines
10 KiB
Scheme
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

(define-module (nichijou packages vim)
#:use-module ((guix licenses)
#:prefix license:)
#:use-module (guix packages)
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system copy)
#:use-module (gnu packages)
#:use-module (gnu packages vim)
#:use-module (gnu packages uml))
(define-public vim-plantuml-syntax
(package
(name "vim-plantuml-syntax")
(version "0.2.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aklt/plantuml-syntax")
(commit "660bbb1ece1e654b2176f76ce0689304c5a4a025")))
(file-name (git-file-name name version))
(sha256
(base32
"05xf36np8y0gdcd05nzmkawh131lp4mm5cjgjr1byr8cjyl1idr3"))))
(build-system copy-build-system)
(arguments
'(#:install-plan '(("ftdetect" "share/vim/vimfiles/")
("ftplugin" "share/vim/vimfiles/")
("indent" "share/vim/vimfiles/")
("syntax" "share/vim/vimfiles/"))))
(synopsis "Vim PlantUML Syntax/Plugin/FTDetect")
(inputs (list plantuml))
(description
"This is a vim syntax file for PlantUML.The filetype will be set to
plantuml for @code{*.pu}, @code{*.uml}, @code{*.puml}, @code{*.iuml} or
@code{*.plantuml} files or if the first line of a file contains
@code{@@startuml}. Additionally the makeprg is set to plantuml assuming you
have this executable in your path.")
(home-page "https://github.com/aklt/plantuml-syntax")
(license #f)))
(define-public vim-doxygen-toolkit
(package
(name "vim-doxygen-toolkit")
(version "0.2.13")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/vim-scripts/DoxygenToolkit.vim")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1za8li02j4nhqjjsyxg4p78638h5af4izim37zc0p1x55zr3i85r"))))
(build-system copy-build-system)
(arguments
'(#:install-plan '(("plugin" "share/vim/vimfiles/"))))
(synopsis "Simplify Doxygen documentation in C, C++, Python.")
(description
"Currently five purposes have been defined :
@itemize
@item Generates a doxygen license comment. The tag text is configurable.
@item Generates a doxygen author skeleton. The tag text is configurable.
@item Generates a doxygen comment skeleton for a C, C++ or Python function or
class, including @code{@@brief}, @code{@@param} (for each named argument), and
@code{@@return}. The tag text as well as a comment block header and footer are
configurable. (Consequently, you can have brief, etc. if you wish, with little
effort.)
@item Ignore code fragment placed in a block defined by #ifdef ... #endif
(C/C++). The block name must be given to the function. All of the
corresponding blocks in all the file will be treated and placed in a new block
DOX_SKIP_BLOCK (or any other name that you have configured). Then you have to
update PREDEFINED value in your doxygen configuration file with correct block
name. You also have to set ENABLE_PREPROCESSING to YES.
@item Generate a doxygen group (beginning and ending). The tag text is
configurable.
@end itemize")
(home-page "https://www.vim.org/scripts/script.php?script_id=987")
(license #f)))
(define-public vim-detectindent
;; No releases have been tagged.
(let ((commit "2511f0f02fb046a09fdbdfc8f21c7a6f2d234936")
(revision "1"))
(package
(name "vim-detectindent")
(version (git-version "0.0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/roryokane/detectindent")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"16k3h64z4ysphchnhgj3jyms51ps0lla885yqznfbknz49pg44cb"))))
(build-system copy-build-system)
(arguments
`(#:install-plan '(("doc" "share/vim/vimfiles/")
("plugin" "share/vim/vimfiles/"))))
(home-page "https://github.com/roryokane/detectindent")
(synopsis "Vim script for automatically detecting indent settings")
(description
"This script provides a command which will attempt to guess the correct
indent settings for an open file, for use when there is no modeline
available. Specifically, the command sets the following buffer-local
options for you:
@itemize
@item 'expandtab' (tabs vs. spaces)
@item 'shiftwidth' (width of indentation)
@item 'tabstop' (width of a tab character)
@item 'softtabstop' (number of spaces that Tab inserts)
@end itemize
Note that this is a pure Vim implementation, and doesnt require any external
applications or interpreters.")
(license #f))))
(define-public vim-deoplete
(let ((commit "33ed4fa0cd704999f9f74b37640bf6d7334bac37")
(revision "1"))
(package
(name "vim-deoplete")
(version (git-version "6.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shougo/deoplete.nvim")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1gabd83gy3skx3q3prk6drn3dzwag5jmzmp43492mihdak0iks3i"))))
(build-system copy-build-system)
(inputs (list python-pynvim))
(arguments
`(#:install-plan '(("autoload" "share/vim/vimfiles/")
("doc" "share/vim/vimfiles/")
("plugin" "share/vim/vimfiles/")
("rplugin" "share/vim/vimfiles/"))))
(home-page "https://github.com/Shougo/deoplete.nvim")
(synopsis
"Dark powered asynchronous completion framework for neovim/Vim8")
(description
"deoplete is the abbreviation of 'dark powered neo-completion'. It
provides an asynchronous keyword completion system in the current
buffer.")
(license license:expat))))
(define-public vim-lsp
(let ((commit "309e9e5c8103bee69eabd152c09eaeec2e0a11f9")
(revision "1"))
(package
(name "vim-lsp")
(version (git-version "0.1.4" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/prabirshrestha/vim-lsp")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"10hwqd07qipn146iwdih3l7f8nbzz01jh7wpbl9f8l84vi5g5c45"))))
(build-system copy-build-system)
(arguments
`(#:install-plan '(("autoload" "share/vim/vimfiles/")
("doc" "share/vim/vimfiles/")
("ftplugin" "share/vim/vimfiles/")
("plugin" "share/vim/vimfiles/")
("syntax" "share/vim/vimfiles/"))))
(home-page "https://github.com/prabirshrestha/vim-lsp")
(synopsis "Async language server protocol plugin for vim and neovim")
(description "Async language server protocol plugin for vim and neovim")
;; vim-lsp itself is licensed under expat however it borrows code from other
;; third party projects that are not strictly expat. Setting license to #f for now.
(license #f))))
(define-public vim-deoplete-vim-lsp
(let ((commit "af5432f1e063fd4c3a5879aa8c2afe82c17dc1c9")
(revision "1"))
(package
(name "vim-deoplete-vim-lsp")
;; No releases have been tagged.
(version (git-version "0.0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url
"https://github.com/lighttiger2505/deoplete-vim-lsp")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1s6fw6vkpl0yiya22g13v4i14w3n1ds2zr8zdlwpkk44bf0225px"))))
(build-system copy-build-system)
(arguments
`(#:install-plan '(("autoload" "share/vim/vimfiles/")
("plugin" "share/vim/vimfiles/")
("rplugin" "share/vim/vimfiles/"))))
(home-page "https://github.com/lighttiger2505/deoplete-vim-lsp")
(synopsis "deoplete source for vim-lsp")
(description "deoplete source for vim-lsp")
(license license:expat))))
(define-public vim-bbye
(let ((commit "25ef93ac5a87526111f43e5110675032dbcacf56")
(revision "1"))
(package
(name "vim-bbye")
(version (git-version "1.0.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/moll/vim-bbye")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0dlifpbd05fcgndpkgb31ww8p90pwdbizmgkkq00qkmvzm1ik4y4"))))
(build-system copy-build-system)
(arguments
`(#:install-plan '(("plugin" "share/vim/vimfiles/"))))
(home-page "https://github.com/moll/vim-bbye")
(synopsis
"Delete buffers and close files in Vim without closing your windows or messing up your layout. Like Bclose.vim, but rewritten and well maintained.")
(description
"Bbye allows you to do delete buffers (close files) without
closing your windows or messing up your layout.
Vim by default closes all windows that have the buffer (file) open when you do
:bdelete. If you've just got your splits and columns perfectly tuned, having
them messed up equals a punch in the face and that's no way to tango.
Bbye gives you :Bdelete and :Bwipeout commands that behave like well designed
citizens:
@itemize
@item Close and remove the buffer.
@item Show another file in that window.
@item Show an empty file if you've got no other files open.
@item Do not leave useless [no file] buffers if you decide to edit another file in that window.
@item Work even if a file's open in multiple windows.
@item Work a-okay with various buffer explorers and tabbars.
@end itemize
Regain your throne as king of buffers!")
;; Bbye is released under a Lesser GNU Affero General Public License.
(license license:agpl3))))